home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / unix / armlinux / alpha / PARTITIONS / USR_GZ / usr / lib / mkshared / mkstubs.hdr.s < prev   
Encoding:
Text File  |  1995-06-29  |  967 b   |  47 lines

  1. @ template file for stub header
  2. @ %L is replaced by the current library name
  3. @ %V is replaced by the library version
  4.  
  5.         .text
  6.  
  7. L_%L_jump_table_pp:
  8.         .word    ___jump_%L_jump_table_p
  9.  
  10.         .global    ___jump_%L_jump
  11. ___jump_%L_jump:
  12.         stmfd    sp !, {lr, pc}
  13.         ldr    lr, L_%L_jump_table_pp
  14.         ldr    lr, [lr]        @ get actual address in shared-lib
  15.         ldr    lr, [lr, ip, lsl #2]
  16.         str    lr, [sp, #4]        @ write new pc for call
  17.         ldmfd    sp !,{lr, pc}        @ call the lib fn
  18.  
  19.         .data
  20.         .global    ___jump_%L_jump_table_p
  21. ___jump_%L_jump_table_p:
  22.         .stabs    "__SHARABLE_CONFLICTS__", 25, 0, 0, ___jump_%L_jump_table_p
  23.         .word    0
  24.         .weak    __%L_data__
  25.         .word    __%L_data__
  26.  
  27.         .text
  28.  
  29. L_%L_name:
  30.         .ascii    "%n"
  31.         .byte    0
  32. L_%L_version:
  33.         .ascii    "DLL Jump 1.0"
  34.         .byte    0
  35.         .align
  36. L_%L_lib:
  37.         .word    L_%L_name        @ char *name
  38.         .word    L_%L_version        @ char *vers
  39.         .word    L_%L_addr        @ unsigned long **addr
  40.         .word    %V            @ unsigned long version
  41.  
  42.         .data
  43. L_%L_addr:
  44.         .word    0
  45.  
  46.         .stabs    "___SHARED_LIBRARIES__", 23, 0, 0, L_%L_lib
  47.