OSDN Git Service

* config/tc-bfin.c (md_assemble): Bump line counters if there is
authorjiez <jiez>
Thu, 3 Sep 2009 16:32:38 +0000 (16:32 +0000)
committerjiez <jiez>
Thu, 3 Sep 2009 16:32:38 +0000 (16:32 +0000)
EOL in the instruction.

testsuite/
* gas/bfin/line_number.l, gas/bfin/line_number.s: New test.
* gas/bfin/bfin.exp: Add the new test.

gas/ChangeLog
gas/config/tc-bfin.c
gas/testsuite/ChangeLog
gas/testsuite/gas/bfin/bfin.exp
gas/testsuite/gas/bfin/line_number.l [new file with mode: 0644]
gas/testsuite/gas/bfin/line_number.s [new file with mode: 0644]

index 8ea4928..254a5fb 100644 (file)
@@ -1,5 +1,10 @@
 2009-09-03  Jie Zhang  <jie.zhang@analog.com>
 
+       * config/tc-bfin.c (md_assemble): Bump line counters if there is
+       EOL in the instruction.
+
+2009-09-03  Jie Zhang  <jie.zhang@analog.com>
+
        * config/bfin-defs.h (IS_GENREG): Define.
        (IS_DAGREG): Define.
        (IS_SYSREG): Define.
index 958f63d..4a02b69 100644 (file)
@@ -712,6 +712,10 @@ md_assemble (char *line)
 #ifdef OBJ_ELF
   dwarf2_emit_insn (insn_size);
 #endif
+
+  while (*line++ != '\0')
+    if (*line == '\n')
+      bump_line_counters ();
 }
 
 /* Parse one line of instructions, and generate opcode for it.
index 0c8b3e4..90b5515 100644 (file)
@@ -1,5 +1,10 @@
 2009-09-03  Jie Zhang  <jie.zhang@analog.com>
 
+       * gas/bfin/line_number.l, gas/bfin/line_number.s: New test.
+       * gas/bfin/bfin.exp: Add the new test.
+
+2009-09-03  Jie Zhang  <jie.zhang@analog.com>
+
        * gas/bfin/expected_move_errors.s,
        gas/bfin/expected_move_errors.l: Add "LC1 = I0;".
        * gas/bfin/move.s, gas/bfin/move.d: Remove "CYCLES = A0.W".
index 59eed65..7a70a4c 100644 (file)
@@ -17,6 +17,7 @@ if [istarget bfin*-*-*] {
        run_dump_test "flow"
        run_dump_test "flow2"
        run_list_test "invalid_arith_mode" ""
+       run_list_test "line_number" ""
        run_dump_test "load"
        run_dump_test "logical"
        run_dump_test "logical2"
diff --git a/gas/testsuite/gas/bfin/line_number.l b/gas/testsuite/gas/bfin/line_number.l
new file mode 100644 (file)
index 0000000..964d809
--- /dev/null
@@ -0,0 +1,3 @@
+.*: Assembler messages:
+.*:4: Error: syntax error. Input text was illegal.
+.*:4: Error: 
diff --git a/gas/testsuite/gas/bfin/line_number.s b/gas/testsuite/gas/bfin/line_number.s
new file mode 100644 (file)
index 0000000..a5e47d3
--- /dev/null
@@ -0,0 +1,4 @@
+       R1 = ROT R0 BY 0 ||
+       R3 = [SP+12] ||
+       nop;
+       ILLEGAL;