Chapter 11. Alpha Dependent Features
77
!lituse_base!N
Used with any memory format instruction (e.g.
ldl
) to indicate that the literal is used for an
address load. The offset field of the instruction must be zero. During relaxation, the code may be
altered to use a gp relative load.
!lituse_jsr!N
Used with a register branch format instruction (e.g.
jsr
) to indicate that the literal is used for a
call. During relaxation, the code may be altered to use a direct branch (e.g.
bsr
).
!lituse_bytoff!N
Used with a byte mask instruction (e.g.
extbl
) to indicate that only the low 3 bits of the address
are relevant. During relaxation, the code may be altered to use an immediate instead of a register
shift.
!lituse_addr!N
Used with any other instruction to indicate that the original address is in fact used, and the original
ldq
instruction may not be altered or deleted. This is useful in conjunction with
lituse_jsr
to
test whether a weak symbol is defined.
ldq
$27,foo($29)
!literal!1
beq
$27,is_undef
!lituse_addr!1
jsr
$26,($27),foo
!lituse_jsr!1
!lituse_tlsgd!N
Used with a register branch format instruction to indicate that the literal is the call to
__tls_get_addr
used to compute the address of the thread local storage variable whose
descriptor was loaded with
!tlsgd!N
.
!lituse_tlsldm!N
Used with a register branch format instruction to indicate that the literal is the call to
__tls_get_addr
used to compute the address of the base of the thread local storage block for
the current module. The descriptor for the module must have been loaded with
!tlsldm!N
.
!gpdisp!N
Used with
ldah
and
lda
to load the GP from the current address, a la the
ldgp
macro. The
source register for the
ldah
instruction must contain the address of the
ldah
instruction. There
must be exactly one
lda
instruction paired with the
ldah
instruction, though it may appear
anywhere in the instruction stream. The immediate operands must be zero.
bsr
$26,foo
ldah $29,0($26)
!gpdisp!1
lda
$29,0($29)
!gpdisp!1
!gprelhigh
Used with an
ldah
instruction to add the high 16 bits of a 32 bit displacement from the GP.
!gprellow
Used with any memory format instruction to add the low 16 bits of a 32 bit displacement from
the GP.
!gprel
Used with any memory format instruction to add a 16 bit displacement from the GP.






footer




 

 

 

 

 Home | About Us | Network | Services | Support | FAQ | Control Panel | Order Online | Sitemap | Contact

canadian web hosting

 

Our partners: PHP: Hypertext Preprocessor Best Web Hosting Java Web Hosting Inexpensive Web Hosting  Jsp Web Hosting

Cheapest Web Hosting Jsp Hosting Cheap Hosting

Visionwebhosting.net Business web hosting division of Web Design Plus. All rights reserved