summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/arm/ldr.s
blob: f09d1b0c07e373995375d11cc17de71ad4fd424a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
.syntax unified

.arm

	@ldr-immediate

	@!wback && (n == t)
	ldr r1, [r1, #5]

	@wback && !(n == t)
	ldr r1, [r2, #5]!

	@ !(rt == r15) && (rn == r15)
	@  && bits<0..1> (immediate) != 00
	ldr r1, [r15, #5]

	@ (rt == r15) && !(rn == r15)
	@  && bits<0..1> (immediate) != 00
	ldr r15, [r1, #5]

	@ ((rt == r15) && ((rn == r15)
	@  && (bits<0..1> (immediate) == 00)))
	ldr r15, [r15, #4]

	@ldr-literal

	@rt == r15 && (bits<0..1> (immediate) == 00)
	ldr r15, .-0xab4

	@(!rt == r15) && bits<0..1> (immediate) != 00
	ldr r1, .-0xab7

	@ldr-register

	@!wback && (n == t || n == 15)
	ldr r1, [r1, r2]
	ldr r2, [r15, r2]

	@wback && !(n == t || n == 15)
	ldr r1, [r2, r3]!

	@rm != 15
	ldr r1, [r1, r12]

	@str-immediate

	@!wback && (n == t || n == 15)
	str r1, [r1, #10]
	str r1, [r15, #10]

	@wback && !(n == t || n == 15)
	str r1, [r2, #10]!

	@str-register

	@!wback && (n == t || n == 15)
	str r1, [r1, r2]
	str r1, [r15, r2]

	@wback && !(n == t || n == 15)
	str r1, [r2, r3]!