Mail Archives: pgcc/2000/12/15/07:38:39
Problem: Pentium GCC generates assembly like the following:
.L868:
        movl 120(%esp),%eax
        addl %edx,%eax
        movd %eax,%mm0
        pslld $4,%mm0
        <84>,<AD><FB>
        movd %eax,%mm1
        psubd %mm1,%mm0
        movd %mm0,%edx
        sall $3,%edx
        testl %ebp,%ebp
        je .L938
and as you can see there are invalid characters there. And the assembler
complains, of course (ie. there are ASCII characters #84, #AD and #FB).
Most files in the program were compiled successfully, but this file
produced the above string <84>,<AD><FB> twice in the 7000 line asm file.
It happened only when I tried using the -mmx switch.
Programs I'm using:
GNU assembler 2.9.5
 774574 Nov 17 14:20 gcc-2.95.2-pgcc-2.95.3.diff
 12885815 Dec  7 14:22 gcc-2.95.2.tar.gz
Command line:
-s -O3 -fomit-frame-pointer -Wall -mpentiumpro -march=pentiumpro
-malign-functions=4 -funroll-loops  -fexpensive-optimizations
-malign-double -fschedule-insns2 -mwide-multiply -mmx
Red Hat 6.2 equivalent system.
By the way, the same happens also with Athlon GCC (which is patch against
the pgcc).
- Raw text -