aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeffrey A Law <law@cygnus.com>1998-12-30 22:45:16 +0000
committerJeff Law <law@gcc.gnu.org>1998-12-30 15:45:16 -0700
commitf203c52060870af5098bbdc24cfc6f3a855dc057 (patch)
treea244fc17934dfa652740b68c10b10e3679e4cdcc
parentde2c54aae155005f3ab91ba39d89424c91c0d1df (diff)
downloadgcc-f203c52060870af5098bbdc24cfc6f3a855dc057.zip
gcc-f203c52060870af5098bbdc24cfc6f3a855dc057.tar.gz
gcc-f203c52060870af5098bbdc24cfc6f3a855dc057.tar.bz2
* i386.md (doubleword shifts): Avoid namespace pollution.
From-SVN: r24448
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.md24
2 files changed, 19 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index d5ede75..2f80253 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Wed Dec 30 23:38:55 1998 Jeffrey A Law (law@cygnus.com)
+
+ * i386.md (doubleword shifts): Avoid namespace pollution.
+
Wed Dec 30 23:00:28 1998 David O'Brien <obrien@NUXI.com>
* configure.in (FreeBSD ELF): Needs special crt files.
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index 2327fa6..ded8f4e 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -4701,11 +4701,13 @@ byte_xor_operation:
output_asm_insn (AS3_SHIFT_DOUBLE (shld%L3,%0,%2,%3), xops);
output_asm_insn (AS2 (sal%L2,%0,%2), xops);
output_asm_insn (AS2 (test%B0,%1,%b0), xops);
- asm_fprintf (asm_out_file, \"\\tje %LLASHLDI%d\\n\", ashldi_label_number);
+ fputs (\"\\tje \", asm_out_file);
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LASHLDI\", ashldi_label_number);
+ fputs (\"\\n\", asm_out_file);
output_asm_insn (AS2 (mov%L3,%2,%3), xops); /* Fast shift by 32 */
output_asm_insn (AS2 (xor%L2,%2,%2), xops);
- asm_fprintf (asm_out_file, \"%LLASHLDI%d:\\n\", ashldi_label_number++);
-
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LASHLDI\", ashldi_label_number);
+ ashldi_label_number++;
RET;
}")
@@ -4889,12 +4891,14 @@ byte_xor_operation:
output_asm_insn (AS3_SHIFT_DOUBLE (shrd%L2,%0,%3,%2), xops);
output_asm_insn (AS2 (sar%L3,%0,%3), xops);
output_asm_insn (AS2 (test%B0,%1,%b0), xops);
- asm_fprintf (asm_out_file, \"\\tje %LLASHRDI%d\\n\", ashrdi_label_number);
+ fputs (\"\\tje \", asm_out_file);
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LASHRDI\", ashrdi_label_number);
+ fputs (\"\\n\", asm_out_file);
xops[1] = GEN_INT (31);
output_asm_insn (AS2 (mov%L2,%3,%2), xops);
output_asm_insn (AS2 (sar%L3,%1,%3), xops); /* shift by 32 */
- asm_fprintf (asm_out_file, \"%LLASHRDI%d:\\n\", ashrdi_label_number++);
-
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LASHRDI\", ashrdi_label_number);
+ ashrdi_label_number++;
RET;
}")
@@ -5053,11 +5057,13 @@ byte_xor_operation:
output_asm_insn (AS3_SHIFT_DOUBLE (shrd%L2,%0,%3,%2), xops);
output_asm_insn (AS2 (shr%L3,%0,%3), xops);
output_asm_insn (AS2 (test%B0,%1,%b0), xops);
- asm_fprintf (asm_out_file, \"\\tje %LLLSHRDI%d\\n\", lshrdi_label_number);
+ fputs (\"\\tje \", asm_out_file);
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LLSHRDI\", lshrdi_label_number);
+ fputs (\"\\n\", asm_out_file);
output_asm_insn (AS2 (mov%L2,%3,%2), xops); /* Fast shift by 32 */
output_asm_insn (AS2 (xor%L3,%3,%3), xops);
- asm_fprintf (asm_out_file, \"%LLLSHRDI%d:\\n\", lshrdi_label_number++);
-
+ ASM_OUTPUT_INTERNAL_LABEL (asm_out_file, \"LLSHRDI\", lshrdi_label_number);
+ lshrdi_label_number++;
RET;
}")