Tighten the constraints for warning about NOPs for the MSP 430 ISA, so NOPs are only...
[deliverable/binutils-gdb.git] / gas / testsuite / gas / msp430 / nop-int.s
1 .text
2
3 ;;; Test some common instruction patterns for disabling/enabling interrupts.
4 ;;; "MOV &FOO,r10" is used as an artbitrary statement which isn't a NOP, to
5 ;;; break up the instructions being tested.
6
7 fn1:
8 ;;; 1: Test EINT
9 ;; 430 ISA: NOP *not* required before *or* after EINT
10 ;; 430x ISA: NOP *is* required before *and* after EINT
11 MOV &FOO,r10
12
13 EINT
14
15 MOV &FOO,r10
16
17 BIS.W #8,SR ; Alias for EINT
18
19 MOV &FOO,r10
20 ;;; 2: Test DINT
21 ;; 430 ISA: NOP *is* required after DINT
22 ;; 430x ISA: NOP *is* required after DINT
23 MOV &FOO,r10
24
25 DINT
26 NOP
27
28 MOV &FOO,r10
29
30 BIC.W #8,SR ; Alias for DINT
31 NOP
32
33 MOV &FOO,r10
34 ;;; 3: Test EINT immediately before DINT
35 ;; 430 ISA: NOP *not* required.
36 ;; 430x ISA: NOP *is* required between EINT and DINT
37 MOV &FOO,r10
38
39 NOP
40 EINT
41 DINT
42 NOP
43
44 MOV &FOO,r10
45
46 NOP
47 BIS.W #8,SR ; Alias for EINT
48 BIC.W #8,SR ; Alias for DINT
49 NOP
50
51 MOV &FOO,r10
52 ;;; 4: Test DINT immediately before EINT
53 ;; 430 ISA: NOP *is* required after DINT.
54 ;; 430x ISA: NOP *is* required after DINT and before EINT. Ensure only one
55 ;; warning is emitted.
56 MOV &FOO,r10
57
58 NOP
59 DINT
60 EINT
61 NOP
62
63 MOV &FOO,r10
64
65 BIC.W #8,SR ; Alias for DINT
66 BIS.W #8,SR ; Alias for EINT
67 NOP
68
69 MOV &FOO,r10
70
71 ;;; 5: Test EINT last insn in file
72
73 NOP
74 EINT
This page took 0.032873 seconds and 4 git commands to generate.