This commit was generated by cvs2svn to track changes on a CVS vendor
[external/binutils.git] / gdb / testsuite / gdb.hp / gdb.base-hp / reg.s
1 ;  assemble as "as -o reg reg.s"
2 ; or
3 ;  cc -g -o +DA2.0N
4 ;
5 ; PA-RISC 2.0 register contents test.
6 ;
7         .level 2.0
8
9         .code
10         .export main,ENTRY
11         .export mainend,CODE
12         .export lab1,CODE
13         .space $TEXT$
14         .subspa $CODE$
15
16 main
17         .proc
18         .callinfo NO_CALLS,FRAME=0
19         .entry
20
21         ;; Test we have right register numbers
22         ;;
23         ADD             %r0,%r0,%r1             ;    0 
24         LDI             1,%r1                   ;    1
25         ;;
26         ;; Don't put anything into r2 or r3--they are special registers.
27         ;;
28         ADD             %r1,%r1,%r4             ;    2
29         ADD             %r4,%r4,%r5             ;    4
30         ADD             %r5,%r5,%r6             ;    8
31         ADD             %r6,%r6,%r7             ;   16
32         ADD             %r7,%r7,%r8             ;   32
33         ADD             %r8,%r8,%r9             ;   64
34         ADD             %r9,%r9,%r10            ;  128
35         ADD             %r10,%r10,%r11          ;  256
36         ADD             %r11,%r11,%r12          ;  512
37         ADD             %r12,%r12,%r13          ; 1024
38         ADD             %r13,%r13,%r14          ; 2048
39         ADD             %r14,%r14,%r15          ; 4096
40         ADD             %r15,%r15,%r16          ; 9192
41
42         ;; Test high bits, to be sure we show them.
43         ;;
44         LDI             0xde,%r19               ; "de"
45         DEPD,Z          %r19,55,56,%r19         ; "de00"
46         LDI             0xad,%r18               ; "ad"
47         ADD             %r18,%r19,%r19          ; "dead"
48         DEPD,Z          %r19,55,56,%r19         ; "dead00"
49         LDI             0xbe,%r18               ; "be"
50         ADD             %r18,%r19,%r19          ; "deadbe"
51         DEPD,Z          %r19,55,56,%r19         ; "deadbe00"
52         LDI             0xef,%r18               ; "ef"
53         ADD             %r18,%r19,%r19          ; "deadbeef"
54         ;
55         DEPD,Z          %r19,55,56,%r19         ; "deadbeef00"
56         LDI             0xba,%r18               ; "ba"
57         ADD             %r18,%r19,%r19          ; "deadbeefba"
58         DEPD,Z          %r19,55,56,%r19         ; "deadbeefba00"
59         LDI             0xdc,%r18               ; "dc"
60         ADD             %r18,%r19,%r19          ; "deadbeefbadc"
61         DEPD,Z          %r19,55,56,%r19         ; "deadbeefbadc00"
62         LDI             0xad,%r18               ; "ad"
63         ADD             %r18,%r19,%r19          ; "deadbeefbadcad"
64         DEPD,Z          %r19,55,56,%r19         ; "deadbeefbadcad00"
65         LDI             0xee,%r18               ; "ee"
66         ADD             %r18,%r19,%r19          ; "deadbeefbadcadee"
67         
68 lab1    ;; Test floating point registers
69         ;;
70         LDIL            LR'one,%r22             ;
71         FLDD            RR'one(%r22),%fr4       ;   1.0
72         FLDD            RR'one+8(%r22),%fr5     ;   2.0
73         FLDD            RR'one+8(%r22),%fr6     ;   2.0
74         FMPY,DBL        %fr5,%fr6,%fr7          ;   4.0
75         FMPY,DBL        %fr6,%fr7,%fr8          ;   8.0
76         FMPY,DBL        %fr7,%fr8,%fr9          ;  32.0
77         FMPY,DBL        %fr8,%fr9,%fr10         ; 256.0
78         
79         ;; The NOP prevents anything from end.o or crt0.o from
80         ;; being appended immediately after "mainend".  If that
81         ;; happens, then we may have other labels that have the
82         ;; same address as "mainend", and thus the debugger
83         ;; may symbolize this PC to something other than "mainend".
84 mainend                
85         NOP
86         .exit
87         .procend
88
89         .space $TEXT$
90         .subspa $CODE$
91         .subspa $LIT$        ;; <don't use> ,QUAD=0,ALIGN=8,ACCESS=0x2c,SORT=16
92 one
93         .align 8
94         .stringz        "?\xF0\x00\x00\x00\x00\x00\x00@\x00\x00\x00\x00\x00\x00"
95         .end
96