Bug#164554: gcc-3.2: volatile not respected on alpha
Package: gcc-3.2
Version: 1:3.2.1-0pre2
Severity: normal
The following program produces output where the assignment to j occurs
before the i has been incremented. This breaks any program using such
constructs to ensure consistency:
volatile int i;
int j;
void a() {
i++;
j = 6;
i--;
}
.prologue 1
ldq $3,i($29) !literal
lda $4,6($31)
ldq $1,j($29) !literal
ldl $2,0($3)
stl $4,0($1)
lda $2,1($2)
stl $2,0($3)
-- System Information
Debian Release: testing/unstable
Kernel Version: Linux gondolin 2.4.18-686-smp #1 SMP Sun Apr 14 12:07:19 EST 2002 i686 unknown unknown GNU/Linux
Versions of the packages gcc-3.2 depends on:
ii binutils 2.13.90.0.4-1 The GNU assembler, linker and binary utiliti
ii cpp-3.2 3.2.1-0pre2 The GNU C preprocessor.
ii gcc-3.2-base 3.2.1-0pre2 The GNU Compiler Collection (base package).
ii libc6 2.2.5-14.3 GNU C Library: Shared libraries and Timezone
ii libgcc1 3.2.1-0pre2 GCC support library.
Reply to: