gdb: handle endbr64 instruction in amd64_analyze_prologue
[deliverable/binutils-gdb.git] / gdb / testsuite / gdb.asm / sh.inc
CommitLineData
71e06f80
CV
1# You'll find a bunch of nop opcodes in the below macros. They are
2# there to keep the code correctly aligned. Be careful to maintain
3# them when changing the code.
4
5 comment "subroutine declare"
584b6e9e 6 .purgem gdbasm_declare
71e06f80
CV
7 .macro gdbasm_declare name
8 .align 1
9 .global \name
10\name:
11 .endm
12
13 comment "subroutine prologue"
14 .macro gdbasm_enter
15 mov.l r14,@-r15
16 sts.l pr,@-r15
17 mov r15,r14
18 nop
19 .endm
20
21 comment "subroutine epilogue"
22 .macro gdbasm_leave
23 mov r14,r15
24 lds.l @r15+,pr
25 mov.l @r15+,r14
26 rts
27 nop
28 nop
29 .endm
30
31 comment "subroutine end"
584b6e9e 32 .purgem gdbasm_end
71e06f80 33 .macro gdbasm_end name
cbf68a60 34 .size \name, . - \name
71e06f80
CV
35 .align 1
36 .endm
37
38 comment "subroutine call"
39 .macro gdbasm_call subr
40 mov.l .Lconst\@,r1
41 bra .Lafterconst\@
42 nop
43 nop
44.Lconst\@:
45 .align 2
46 .long \subr
47 .align 1
48.Lafterconst\@:
49 jsr @r1
50 nop
51 .endm
52
53 .macro gdbasm_several_nops
54 nop
55 nop
56 nop
57 nop
58 .endm
59
60 comment "exit (0)"
61 .macro gdbasm_exit0
62 sleep
63 nop
64 .endm
65
66 comment "crt0 startup"
67 .macro gdbasm_startup
dd6d3b70
TS
68 comment "If there is a _stack symbol, use it for setting up the stack"
69 comment "pointer. In hosted mode (when there is no _stack symbol),"
70 comment "the operating system will have initialized it already."
71 mov.l .stackaddr, r0
72 tst r0, r0
73 bt .afterstackaddr
74 mov r0, r15
71e06f80
CV
75 bra .afterstackaddr
76 nop
71e06f80
CV
77 .align 2
78.stackaddr:
dd6d3b70
TS
79 .weak _stack
80 .long _stack
71e06f80
CV
81 .align 1
82.afterstackaddr:
83 .endm
84
85 comment "Declare a data variable"
584b6e9e 86 .purgem gdbasm_datavar
71e06f80
CV
87 .macro gdbasm_datavar name value
88 .data
89 .align 2
90 .type \name, @object
91 .size \name, 4
92\name:
93 .long \value
94 .endm
This page took 2.699313 seconds and 4 git commands to generate.