Skip to contentSkip to conversation

gcc-3.3.1-hammer breaks mm/memory.c

DISCUSSION J.A. Magallon 2 participants 3 messages Jul 15, 2003 – Jul 16, 2003

lore
Share & tools
lore
#0 lore raw

Hi all...

After some binary search and a 'couple' kernel builds, I narrowed the problem to mm/memory.c. With that file built at -O1:

CFLAGS_memory.o = -O1

The kernel boots, starts /sbin/init and looks like working normally (2.4.22-pre5).

Anybody can see what is miscompiled with an assembler listing ? Any #pragma to switch optmizations on the half of a file or for a function ?

TIA

Signature · 4 lines
J.A. Magallon <[email protected]>      \                 Software is like sex:
werewolf.able.es                         \           It's better when it's free
Mandrake Linux release 9.2 (Cooker) for i586
Linux 2.4.22-pre5 (gcc 3.3.1 (Mandrake Linux 9.2 3.3.1-0.2mdk))
#1 lore raw
Quoted 5 lines · J.A. Magallon

Hi all...

After some binary search and a 'couple' kernel builds, I narrowed the problem to mm/memory.c. With that file built at -O1:

Quoted 9 lines

CFLAGS_memory.o = -O1

The kernel boots, starts /sbin/init and looks like working normally (2.4.22-pre5).

Anybody can see what is miscompiled with an assembler listing ? Any #pragma to switch optmizations on the half of a file or for a function ?

I finally got this: -O2 fails but

CFLAGS_memory.o = -Os -falign-functions -falign-jumps -falign-loops -falign-labels -fprefetch-loop-arrays -freorder-blocks

works.

Those are specific options disabled by -Os, but -Os does more things... (assembler output is very different)

Any SuSE site (hammer comes from SuSE, isn't it ?) to submit a decent bug report ?

TIA

Signature · 4 lines
J.A. Magallon <[email protected]>      \                 Software is like sex:
werewolf.able.es                         \           It's better when it's free
Mandrake Linux release 9.2 (Cooker) for i586
Linux 2.4.22-pre5-jam1m (gcc 3.3.1 (Mandrake Linux 9.2 3.3.1-0.2mdk))
#2 lore raw
Quoted 21 lines · J.A. Magallon
Quoted 5 lines · J.A. Magallon

Hi all...

After some binary search and a 'couple' kernel builds, I narrowed the problem to mm/memory.c. With that file built at -O1:

Quoted 9 lines

CFLAGS_memory.o = -O1

The kernel boots, starts /sbin/init and looks like working normally (2.4.22-pre5).

Anybody can see what is miscompiled with an assembler listing ? Any #pragma to switch optmizations on the half of a file or for a function ?

I finally got this: -O2 fails but

CFLAGS_memory.o = -Os -falign-functions -falign-jumps -falign-loops -falign-labels -fprefetch-loop-arrays -freorder-blocks

Quoted 7 lines

works.

Those are specific options disabled by -Os, but -Os does more things... (assembler output is very different)

Any SuSE site (hammer comes from SuSE, isn't it ?) to submit a decent bug report ?

[email protected] should be appropriate.

Andrea