This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug middle-end/29440] 4.2 20061007 experimental misscompiles libavcodec/h264.o



------- Comment #5 from poirierg at gmail dot com  2006-10-12 14:53 -------
Hello,

(In reply to comment #3)
> Does it work when compiled with -O0 instead of -O4?  How about -O1?

The code compiles and produces the expected result with -O1, O2, but can't be
compiled with -O0:
In file included from h264.c:36:
cabac.h: In function 'get_cabac':
cabac.h:454: error: can't find a register in class 'GENERAL_REGS' while
reloading 'asm'
cabac.h:454: error: 'asm' operand has impossible constraints
h264.c: In function 'decode_cabac_residual':
h264.c:6120: warning: initialization from incompatible pointer type

> Besies above, I noticed that the asm in get_cabac looks to be clobbering memory
> but is not marked as such.

I can't really comment on that as I'm not too inline-asm fluent... however, I
can say that this code can't be compiled without -fomit-frame-pointer.
Is GCC supposed to produce valid code with this source to begin with?

Guillaume


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29440


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]