[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#198269: gcc-3.3: -falign-* has no effect on i386



Package: gcc-3.3
Version: 1:3.3-2
Severity: normal

Compiling the following program (b.c) on i386

int f(int a) {
	int i = 0;

	if (a > 3)
		goto end;
	return 3;

end:
	return g(0);
}

with "gcc -O2 -falign-jumps=0 -S" produces

	.file	"b.c"
	.text
	.p2align 2,,3
.globl f
	.type	f, @function
f:
	pushl	%ebp
	movl	%esp, %ebp
	cmpl	$3, 8(%ebp)
	jle	.L4
.L3:
	movl	$0, 8(%ebp)
	leave
	jmp	g
	.p2align 2,,3
.L4:
	movl	$3, %eax
	leave
	ret
	.size	f, .-f
	.ident	"GCC: (GNU) 3.3 (Debian)"

As you can see, -falign-jumps=0 was ignored.  -malign-jumps=0 does
work on the other hand.  This applies to all -falign-* options.

-- System Information
Debian Release: testing/unstable
Kernel Version: Linux gondolin 2.4.21-1-686-smp #3 SMP Mon Jun 16 22:16:22 EST 2003 i686 GNU/Linux

Versions of the packages gcc-3.3 depends on:
ii  binutils       2.14.90.0.4-0. The GNU assembler, linker and binary utiliti
ii  cpp-3.3        3.3-2          The GNU C preprocessor
ii  gcc-3.3-base   3.3-2          The GNU Compiler Collection (base package)
ii  libc6          2.3.1-16       GNU C Library: Shared libraries and Timezone
ii  libgcc1        3.3-2          GCC support library



Reply to: