------- Additional Comments From jakub at gcc dot gnu dot org 2005-03-04 00:01
-------
Assembly diff between bad and good:
diff -pU6 macro1.s.{broken,good}
--- macro1.s.broken 2005-03-03 19:00:26.000000000 -0500
+++ macro1.s.good 2005-03-03 19:00:15.000000000 -0500
@@ -159,14 +159,13 @@ replace_args2:
lg %r2,160(%r15)
tm 0(%r10),8
lg %r1,0(%r2)
mvc 4(1,%r3),4(%r1)
lg %r1,160(%r15)
lg %r2,0(%r1)
- mvc 8(4,%r3),8(%r2)
- mvc 16(8,%r3),16(%r2)
+ mvc 8(16,%r3),8(%r2)
je .L56
lg %r2,0(%r1)
ic %r1,5(%r2)
oill %r1,8
stc %r1,5(%r3)
.L58:
@@ -406,15 +405,14 @@ cpp_get_token:
j .L99
.L105:
lgr %r2,%r11
brasl %r14,_cpp_temp_token
ic %r1,5(%r12)
oill %r1,32
- mvc 8(4,%r2),8(%r12)
+ mvc 8(16,%r2),8(%r12)
mvc 4(1,%r2),4(%r12)
- mvc 16(8,%r2),16(%r12)
stc %r1,5(%r2)
lgr %r12,%r2
lgr %r2,%r12
lg %r4,272(%r15)
lmg %r11,%r15,248(%r15)
br %r4
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20282