GCC 3.1 bug? - looks like it miscompiles optimize_mode_switching()
tm
tm@mail.kloo.net
Wed May 29 16:03:00 GMT 2002
On Wed, 29 May 2002, tm wrote:
> int no_mode = num_modes[e];
> struct bb_info *info = bb_info[j];
> 15f4: 8b 54 15 a4 mov
> 0xffffffa4(%ebp,%edx,1),%edx
> 15f8: 8b 04 85 00 00 00 00 mov 0x0(,%eax,4),%eax
> 15ff: 89 95 70 ff ff ff mov %edx,0xffffff70(%ebp)
> 1605: 89 85 74 ff ff ff mov %eax,0xffffff74(%ebp)
>
> ^ info allocated at
> 0xffffff74(%ebp)
Ooops
> ...
> info[bb->index].computing = last_mode;
> 16e2: 8b 55 98 mov 0xffffff98(%ebp),%edx
> 16e5: 8b b5 6c ff ff ff mov 0xffffff6c(%ebp),%esi
> 16eb: 8b 8d 70 ff ff ff mov 0xffffff70(%ebp),%ecx
>
> ^ info referenced at
> 0xffffff70(%ebp)
> looks wrong!
This is correct. My mistake - sorry about the false alarm.
Will investigate further.
Toshi
More information about the Gcc-bugs
mailing list