1 ; assemble as
"as -o reg-pa64 reg-pa64.s"
5 ; PA-RISC
2.0 register contents test.
17 .stringz "?\xF0\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00"
21 .callinfo NO_CALLS,FRAME=0
24 ;; Test we have right register numbers
29 ;; Don
't put anything into r2 or r3--they are special registers.
37 ADD %r9,%r9,%r10 ; 128
38 ADD %r10,%r10,%r11 ; 256
39 ADD %r11,%r11,%r12 ; 512
40 ADD %r12,%r12,%r13 ; 1024
41 ADD %r13,%r13,%r14 ; 2048
42 ADD %r14,%r14,%r15 ; 4096
43 ADD %r15,%r15,%r16 ; 9192
45 ;; Test high bits, to be sure we show them.
48 DEPD,Z %r19,55,56,%r19 ; "de00"
50 ADD %r18,%r19,%r19 ; "dead"
51 DEPD,Z %r19,55,56,%r19 ; "dead00"
53 ADD %r18,%r19,%r19 ; "deadbe"
54 DEPD,Z %r19,55,56,%r19 ; "deadbe00"
56 ADD %r18,%r19,%r19 ; "deadbeef"
58 DEPD,Z %r19,55,56,%r19 ; "deadbeef00"
60 ADD %r18,%r19,%r19 ; "deadbeefba"
61 DEPD,Z %r19,55,56,%r19 ; "deadbeefba00"
63 ADD %r18,%r19,%r19 ; "deadbeefbadc"
64 DEPD,Z %r19,55,56,%r19 ; "deadbeefbadc00"
66 ADD %r18,%r19,%r19 ; "deadbeefbadcad"
67 DEPD,Z %r19,55,56,%r19 ; "deadbeefbadcad00"
69 ADD %r18,%r19,%r19 ; "deadbeefbadcadee"
71 lab1 ;; Test floating point registers
74 ;; FLDD RR
'one(%r22),%fr4 ; 1.0
75 ;; FLDD RR'one+
8(%r22),%fr5 ;
2.0
76 ;; FLDD RR
'one+8(%r22),%fr6 ; 2.0
79 here DEPDI 0x0,63,2,%r2
85 FMPY,DBL %fr5,%fr6,%fr7 ; 4.0
86 FMPY,DBL %fr6,%fr7,%fr8 ; 8.0
87 FMPY,DBL %fr7,%fr8,%fr9 ; 32.0
88 FMPY,DBL %fr8,%fr9,%fr10 ; 256.0
90 ;; The NOP prevents anything from end.o or crt0.o from
91 ;; being appended immediately after "mainend". If that
92 ;; happens, then we may have other labels that have the
93 ;; same address as "mainend", and thus the debugger
94 ;; may symbolize this PC to something other than "mainend".
102 .subspa $LIT$ ;; <don't use
> ,QUAD
=0,ALIGN
=8,ACCESS
=0x2c,SORT
=16