[GCC] gcc vs. indentation
Hugh Dickins
hugh@veritas.com
Mon Jun 30 07:03:00 GMT 2003
On Mon, 30 Jun 2003, Samium Gromoff wrote:
>
> - if (Controller->FirmwareType == DAC960_V1_Controller)
> - {
> + if (Controller->FirmwareType == DAC960_V1_Controller) {
> -origDAC960.o: file format elf32-i386
> +./newDAC960.o: file format elf32-i386
>
> Disassembly of section .text:
>
> @@ -5837,7 +5837,7 @@
> 52a8: 84 c0 test %al,%al
> 52aa: 75 14 jne 52c0 <DAC960_V1_ProcessCompletedCommand+0x80>
> 52ac: 0f 0b ud2a
> - 52ae: 7d 0d jge 52bd <DAC960_V1_ProcessCompletedCommand+0x7d>
> + 52ae: 7c 0d jl 52bd <DAC960_V1_ProcessCompletedCommand+0x7d>
> 52b0: 27 daa
> 52b1: 00 00 add %al,(%eax)
> 52b3: 00 8d b6 00 00 00 add %cl,0xb6(%ebp)
> @@ -5951,7 +5951,7 @@
> 5421: 84 c0 test %al,%al
> 5423: 0f 85 97 fe ff ff jne 52c0 <DAC960_V1_ProcessCompletedCommand+0x80>
> 5429: 0f 0b ud2a
> - 542b: 8f 0d 27 00 00 00 popl 0x27
> + 542b: 8e 0d 27 00 00 00 movl 0x27,%cs
> 5431: e9 8a fe ff ff jmp 52c0 <DAC960_V1_ProcessCompletedCommand+0x80>
> 5436: 89 1c 24 mov %ebx,(%esp,1)
> 5439: e8 fc ff ff ff call 543a <DAC960_V1_ProcessCompletedCommand+0x1fa>
> @@ -7414,7 +7414,7 @@
> 6ba2: 84 c0 test %al,%al
> 6ba4: 75 0a jne 6bb0 <DAC960_V2_ProcessCompletedCommand+0xa0>
> 6ba6: 0f 0b ud2a
> - 6ba8: bc 11 27 00 00 mov $0x2711,%esp
> + 6ba8: bb 11 27 00 00 mov $0x2711,%ebx
> 6bad: 00 89 f6 83 bc 24 add %cl,0x24bc83f6(%ecx)
> 6bb3: 84 00 test %al,(%eax)
> 6bb5: 00 00 add %al,(%eax)
>
> Thats it.
> The point is i thought and hoped that gcc abstract syntax tree constructor is
> indentation invariant, and that is seemingly not true.
It's okay, no need to worry. See the "ud2a"s just above the differences?
Those are BUG()s, and they're going to be followed by a short __LINE__
then __FILE__ pointer. Your indentation change removed one line, so the
BUG()'s __LINE__ numbers have gone down one. (And it takes a while for
the disassembly to get back to sanity with the instructions thereafter.)
Hugh
More information about the Gcc-bugs
mailing list