]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gas/testsuite/gas/arm/sp-pc-usage-t.d
Generate a warning in the ARM assembler if a PC-relative thumb load instruction is...
[thirdparty/binutils-gdb.git] / gas / testsuite / gas / arm / sp-pc-usage-t.d
CommitLineData
539d4391
NC
1# name: SP and PC registers special uses test.
2# objdump: -d --prefix-addresses --show-raw-insn
3
4.*: +file format .*arm.*
5
6Disassembly of section .text:
700000000 <foo> 4685 mov sp, r0
800000002 <foo\+0x2> 4668 mov r0, sp
900000004 <foo\+0x4> b000 add sp, #0
1000000006 <foo\+0x6> f20d 0d00 addw sp, sp, #0
110000000a <foo\+0xa> b080 sub sp, #0
120000000c <foo\+0xc> f2ad 0d00 subw sp, sp, #0
1300000010 <foo\+0x10> 4485 add sp, r0
1400000012 <foo\+0x12> eb0d 0d40 add.w sp, sp, r0, lsl #1
1500000016 <foo\+0x16> ebad 0d00 sub.w sp, sp, r0
160000001a <foo\+0x1a> ebad 0d40 sub.w sp, sp, r0, lsl #1
170000001e <foo\+0x1e> 9800 ldr r0, \[sp, #0\]
1800000020 <foo\+0x20> 4800 ldr r0, \[pc, #0\] ; \(00000024 <foo\+0x24>\)
1900000022 <foo\+0x22> f8d0 f000 ldr.w pc, \[r0\]
2000000026 <foo\+0x26> f8d0 d000 ldr.w sp, \[r0\]
210000002a <foo\+0x2a> f8df f000 ldr.w pc, \[pc\] ; 0000002c <foo\+0x2c>
220000002e <foo\+0x2e> f8dd d000 ldr.w sp, \[sp\]
2300000032 <foo\+0x32> f8dd f000 ldr.w pc, \[sp\]
2400000036 <foo\+0x36> f8df d000 ldr.w sp, \[pc\] ; 00000038 <foo\+0x38>
1be5fd2e
NC
250000003a <foo\+0x3a> 9000 str r0, \[sp, #0\]
260000003c <foo\+0x3c> f8c0 d000 str.w sp, \[r0\]
2700000040 <foo\+0x40> f8cd d000 str.w sp, \[sp\]
2800000044 <foo\+0x44> 4468 add r0, sp
2900000046 <foo\+0x46> eb1d 0000 adds.w r0, sp, r0
300000004a <foo\+0x4a> eb0d 0040 add.w r0, sp, r0, lsl #1
310000004e <foo\+0x4e> eb1d 0040 adds.w r0, sp, r0, lsl #1
3200000052 <foo\+0x52> f11d 0f00 cmn.w sp, #0
3300000056 <foo\+0x56> eb1d 0f00 cmn.w sp, r0
340000005a <foo\+0x5a> eb1d 0f40 cmn.w sp, r0, lsl #1
350000005e <foo\+0x5e> f1bd 0f00 cmp.w sp, #0
3600000062 <foo\+0x62> 4585 cmp sp, r0
3700000064 <foo\+0x64> ebbd 0f40 cmp.w sp, r0, lsl #1
3800000068 <foo\+0x68> b080 sub sp, #0
390000006a <foo\+0x6a> f1bd 0d00 subs.w sp, sp, #0
400000006e <foo\+0x6e> f1ad 0000 sub.w r0, sp, #0
4100000072 <foo\+0x72> f1bd 0000 subs.w r0, sp, #0
4200000076 <foo\+0x76> b001 add sp, #4
4300000078 <foo\+0x78> a801 add r0, sp, #4
440000007a <foo\+0x7a> f11d 0d04 adds.w sp, sp, #4
450000007e <foo\+0x7e> f11d 0004 adds.w r0, sp, #4
4600000082 <foo\+0x82> f20d 0004 addw r0, sp, #4
4700000086 <foo\+0x86> b001 add sp, #4
4800000088 <foo\+0x88> f11d 0d04 adds.w sp, sp, #4
490000008c <foo\+0x8c> f20d 0d04 addw sp, sp, #4
5000000090 <foo\+0x90> 4485 add sp, r0
5100000092 <foo\+0x92> 4468 add r0, sp
5200000094 <foo\+0x94> eb0d 0040 add.w r0, sp, r0, lsl #1
5300000098 <foo\+0x98> eb1d 0d00 adds.w sp, sp, r0
540000009c <foo\+0x9c> eb1d 0000 adds.w r0, sp, r0
55000000a0 <foo\+0xa0> eb1d 0040 adds.w r0, sp, r0, lsl #1
56000000a4 <foo\+0xa4> 4485 add sp, r0
57000000a6 <foo\+0xa6> eb0d 0d40 add.w sp, sp, r0, lsl #1
58000000aa <foo\+0xaa> eb1d 0d00 adds.w sp, sp, r0
59000000ae <foo\+0xae> eb1d 0d40 adds.w sp, sp, r0, lsl #1
60000000b2 <foo\+0xb2> 44ed add sp, sp
61000000b4 <foo\+0xb4> f1ad 0000 sub.w r0, sp, #0
62000000b8 <foo\+0xb8> f1bd 0000 subs.w r0, sp, #0
63000000bc <foo\+0xbc> f2ad 0000 subw r0, sp, #0
64000000c0 <foo\+0xc0> b080 sub sp, #0
65000000c2 <foo\+0xc2> f1bd 0d00 subs.w sp, sp, #0
66000000c6 <foo\+0xc6> f2ad 0d00 subw sp, sp, #0
67000000ca <foo\+0xca> b080 sub sp, #0
68000000cc <foo\+0xcc> f1bd 0d00 subs.w sp, sp, #0
69000000d0 <foo\+0xd0> ebad 0040 sub.w r0, sp, r0, lsl #1
70000000d4 <foo\+0xd4> ebbd 0040 subs.w r0, sp, r0, lsl #1
71000000d8 <foo\+0xd8> ebad 0d40 sub.w sp, sp, r0, lsl #1
72000000dc <foo\+0xdc> ebbd 0d40 subs.w sp, sp, r0, lsl #1
73000000e0 <foo\+0xe0> a001 add r0, pc, #4 ; \(adr r0, 000000e8 <foo\+0xe8>\)
74000000e2 <foo\+0xe2> f2af 0004 subw r0, pc, #4
75000000e6 <foo\+0xe6> f20f 0004 addw r0, pc, #4
5be8be5d
DG
76000000ea <foo\+0xea> f2af 0004 subw r0, pc, #4
77000000ee <foo\+0xee> f20f 0004 addw r0, pc, #4
78000000f2 <foo\+0xf2> f2af 0004 subw r0, pc, #4
1be5fd2e
NC
79000000f6 <foo\+0xf6> bf00 nop
80000000f8 <foo\+0xf8> bf00 nop
81000000fa <foo\+0xfa> bf00 nop
749479c8 82#pass