[#5626] Build lib mad fail at option "-fforce-mem" with gcc 4.3

Document created by Aaronwu Employee on Sep 5, 2013
Version 1Show Document
  • View in full screen mode

[#5626] Build lib mad fail at option "-fforce-mem" with gcc 4.3

Submitted By: Vivi Li

Open Date

2009-10-19 05:52:58     Close Date

2009-10-20 03:13:56

Priority:

Medium     Assignee:

Barry Song

Status:

Closed     Fixed In Release:

N/A

Found In Release:

2010R1     Release:

Category:

N/A     Board:

N/A

Processor:

ALL     Silicon Revision:

Is this bug repeatable?:

Yes     Resolution:

Fixed

Uboot version or rev.:

    Toolchain version or rev.:

gcc4.3-trunk-svn3648

App binary format:

N/A     

Summary: Build lib mad fail at option "-fforce-mem" with gcc 4.3

Details:

 

Build lib mad fail at option "-fforce-mem" with gcc 4.3 toolchain.

Option "-fforce-mem" is not supported in gcc4.3 now.

 

Lib mad:

--

/bin/sh ./libtool --mode=compile bfin-uclinux-gcc -DHAVE_CONFIG_H -I. -I../libmad-0.15.1b -I. -DFPM_DEFAULT   -DEMBED -D__uClinux__ -I/home/test/work/cruise/checkouts/uclinux-dist  -mcpu=bf548-0.2  -Wall -pipe  -mcpu=bf548-0.2 -g -O -fforce-mem -fforce-addr -fthread-jumps -fcse-follow-jumps -fcse-skip-blocks -fexpensive-optimizations -fregmove -fschedule-insns2 -c -o version.lo ../libmad-0.15.1b/version.c

bfin-uclinux-gcc -DHAVE_CONFIG_H -I. -I../libmad-0.15.1b -I. -DFPM_DEFAULT -DEMBED -D__uClinux__ -I/home/test/work/cruise/checkouts/uclinux-dist -mcpu=bf548-0.2 -Wall -pipe -mcpu=bf548-0.2 -g -O -fforce-mem -fforce-addr -fthread-jumps -fcse-follow-jumps -fcse-skip-blocks -fexpensive-optimizations -fregmove -fschedule-insns2 -c ../libmad-0.15.1b/version.c -o version.o

cc1: error: unrecognized command line option "-fforce-mem"

make[5]: *** [version.lo] Error 1

make[5]: Leaving directory `/home/test/work/cruise/checkouts/uclinux-dist/lib/libmad/build-libmad-0.15.1b'

make[4]: *** [install-recursive] Error 1

--

 

Follow-ups

 

--- Robin Getz                                               2009-10-19 11:46:09

       -fforce-mem

           Force memory operands to be copied into registers before doing

           arithmetic on them.  This produces better code by making all memory

           references potential common subexpressions.  When they are not

com‐

           mon subexpressions, instruction combination should eliminate the

           separate register-load. This option is now a nop and will be

           removed in 4.2.

 

So, it was removed. We just need to update libmad's configure script.

 

 

 

 

--- Robin Getz                                               2009-10-19 12:07:00

===================================================================

--- lib/libmad/libmad-0.15.1b/configure (revision 9007)

+++ lib/libmad/libmad-0.15.1b/configure (working copy)

@@ -19099,7 +19099,8 @@

     case "$optimize" in

        -O|"-O "*)

            optimize="-O"

-           optimize="$optimize -fforce-mem"

+           # this option had been removed from gcc 4.3

+           # optimize="$optimize -fforce-mem"

            optimize="$optimize -fforce-addr"

            : #x optimize="$optimize -finline-functions"

            : #- optimize="$optimize -fstrength-reduce"

 

Fixes it for me...

 

 

--- Barry Song                                               2009-10-19 22:35:10

checked in.

 

--- Vivi Li                                                  2009-10-20 03:13:56

OK now. Close it.

 

 

 

    Files

    Changes

    Commits

    Dependencies

    Duplicates

    Associations

    Tags

 

File Name     File Type     File Size     Posted By

No Files Were Found

Attachments

    Outcomes