------- 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