This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug inline-asm/45160] [4.4.x/4.5.x regression] Invalid assembly code is generated for x86 architecture for faad2 library (AAC decode algorithm)
- From: "t dot artem at mailcity dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 2 Aug 2010 20:27:10 -0000
- Subject: [Bug inline-asm/45160] [4.4.x/4.5.x regression] Invalid assembly code is generated for x86 architecture for faad2 library (AAC decode algorithm)
- References: <bug-45160-5637@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #9 from t dot artem at mailcity dot com 2010-08-02 20:27 -------
The culprit is the ic_predict.c file. When I compile it with
-fno-strict-aliasing (while everything else is being compiled with
-fstrict-aliasing) libfaad works correctly.
These are the warnings which I get from GCC:
ic_predict.c: In function 'flt_round':
ic_predict.c:58: warning: dereferencing type-punned pointer will break
strict-aliasing rules
ic_predict.c:58: warning: dereferencing type-punned pointer will break
strict-aliasing rules
ic_predict.c:58: warning: dereferencing type-punned pointer will break
strict-aliasing rules
ic_predict.c:60: warning: dereferencing type-punned pointer will break
strict-aliasing rules
ic_predict.c: In function 'ic_prediction':
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
ic_predict.c:78: warning: dereferencing pointer 'tmp' does break
strict-aliasing rules
ic_predict.c:77: note: initialized from here
Maybe GCC developers could devise a patch for this file because
http://www.audiocoding.com/faad2.html site seems to be dead.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45160