Index

C program generating assembly code, 138

copying a string, 132 dividing a double-word dividend, 134

programs file, 15 structure, 19

pseudo-instruction,120 ADDB, 120 ADDIB, 120

B, 120 COMB, 120 COMIB, 120 COPY, 120 LDI, 120 MTSAR, 120 NOP, 120

pseudo-instruction set, 119 pseudo-operation,53

.BLOCK, 60, 101

.BLOCKZ, 60

.BYTE, 62

.DOUBLE, 77

.DWORD, 78

.ENTER, 28, 48, 52, 67, 81, 83, 95, 102

.FLOAT, 88

.HALF, 89

.LEAVE, 28, 48, 52, 67, 81, 83, 95, 102

.SPNUM, 108

.STRING, 109

.STRINGZ, 109

.WORD, 115 list of, 55

Q

quadrant attribute and subspaces, 42

R

register control, 24 floating-point,23 general, 23, 35, 48 mnemonics, 23 name user-defined,104 procedure calling convention,

28 space, 24, 27 typing, 25, 35

register mnemonic previous_sp, 28

registers arg0, 136 r%26, 136 r%28, 136 ret0, 136

relocatable expressions, 16 legal combinations, 30 result, 29

symbols, 15 relocatable object file, 15 requesting storage, 74 reserving a single-word,108 reserving storage, 60, 78, 115

and initializing to specified value, 62

initializing to ASCII values, 109

initializing to specified value, 89

result absolute, 29 relocatable, 29

ret0 registers, 136

returning

to old space, 106

to old subspace, 111

S

SEC_PROG symbols, 86

sections

64-bit mode, 44 segments

64-bit environment, 44 shared libraries

creating, 51 field selectors, 33 spaces, 40

specifying object file version, 105

shared memory spaces, 40

SHN_ABS

., 85

short addressing, 40 single-word to floating-point

value, 88 soft_reg.h header file, 127 sort keys

and standard subspaces, 43 attribute and subspaces, 42, 43 spaces, 41

source file, 15

space number, initialized with, 108

spaces $DEBUG$, 41

$PRIVATE$, 40, 41, 43, 49, 74 $TEXT$, 40, 41, 43

.SPACE directive, 41, 106 64-bit environment, 44 code, 39

data, 39 declaring, 106 declaring new, 106 description, 39 identifiers, 39

memory layout on HP-UX,41 offsets, 40

quadrant, 40

200

Index