PR 12848
authorNick Clifton <nickc@redhat.com>
Thu, 30 Jun 2011 13:05:04 +0000 (13:05 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 30 Jun 2011 13:05:04 +0000 (13:05 +0000)
* gas/arm/thumb-b-bad.s: New test.
* gas/arm/thumb-b-bad.d: Test control file.
* gas/arm/thumb-b-bad.l: Expected error output.

gas/testsuite/ChangeLog
gas/testsuite/gas/arm/thumb-b-bad.d [new file with mode: 0644]
gas/testsuite/gas/arm/thumb-b-bad.l [new file with mode: 0644]
gas/testsuite/gas/arm/thumb-b-bad.s [new file with mode: 0644]

index 06941261c350b453e2e3e136f619d33acc67490b..ed91f2424783e34e47710c3ee2babdff92eb7b27 100644 (file)
@@ -1,3 +1,10 @@
+2011-06-30  Nick Clifton  <nickc@redhat.com>
+
+       PR 12848
+       * gas/arm/thumb-b-bad.s: New test.
+       * gas/arm/thumb-b-bad.d: Test control file.
+       * gas/arm/thumb-b-bad.l: Expected error output.
+
 2011-06-29  Richard Sandiford  <rdsandiford@googlemail.com>
 
        * gas/mips/mips16-e.d, gas/mips/mips16-f.d,
diff --git a/gas/testsuite/gas/arm/thumb-b-bad.d b/gas/testsuite/gas/arm/thumb-b-bad.d
new file mode 100644 (file)
index 0000000..958773d
--- /dev/null
@@ -0,0 +1,4 @@
+#name: Out of range Thumb branches (PR 12848)
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
+#as: -mthumb
+#error-output: thumb-b-bad.l
diff --git a/gas/testsuite/gas/arm/thumb-b-bad.l b/gas/testsuite/gas/arm/thumb-b-bad.l
new file mode 100644 (file)
index 0000000..0c76b4d
--- /dev/null
@@ -0,0 +1,6 @@
+[^:]*: Assembler messages:
+[^:]*:9: Error: branch out of range
+[^:]*:5: Error: branch out of range
+[^:]*:8: Error: branch out of range
+[^:]*:11: Error: branch out of range
+[^:]*:15: Error: branch out of range
diff --git a/gas/testsuite/gas/arm/thumb-b-bad.s b/gas/testsuite/gas/arm/thumb-b-bad.s
new file mode 100644 (file)
index 0000000..7306b79
--- /dev/null
@@ -0,0 +1,17 @@
+.syntax unified
+
+.type f, %function
+e:
+        b       . - 0xfffffe   @ gas mis-assembles as a forward branch
+        b       . - 0xfffffc
+        b       . + 0x1000002
+        b       . + 0x1000004  @ gas mis-assembles as a backward branch
+        b.w     . + 0x2000002  @ gas mis-assembles as a backward branch
+
+f:      b       g              @ gas mis-assembles as a backward branch
+
+        .space 0x1fffff0
+
+g:      b       f              @ gas mis-assembles as a forward branch
+
+