This is the mail archive of the ecos-discuss@sourceware.org mailing list for the eCos 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]

"Bad" and "good" GCC FLAGS for ECOS environment


Hello,

Trying new arm-eabi-gcc to build existen targets I noticed what it is
not possible to build some of them. Issue is it's CYGBLD_GLOBAL_CFLAGS.
Greeping, viming the hal*.cdl(s) I found no up-to-dated CFLAGS for GCC4
which I can use as the good example, at the least, it seemed for me.

I am not GCC expert and I know the very minimal CFLAGS set: -O{0,2}; -g;
-Wall :-) I ask experts, What FLAG is good for new GCC in eCos and what
FLAG is "bad"? I know only one "bad" for GCC-4: -mno-short-load-words,
but, a few targets still use it. I've known one good flag from Jonathan
Larmour: -Wno-write-strings. Can anyone distribute his knowledges about
other GCC-4 flags for _eCos_ environment? 

I wrote a simple Tcl script to build CFLAGS histograms (see the below)
just for expetrs who can "underline" the table's rows by a comment in
1-2 lines or even just mark the rows by asterisks. There are a head
(list of inspected targets) and 2 columns table: the 1st column contains
a meet GCC flag, the 2nd -- target's names (or aliases) which use this
flag on the screen Long lists are truncated.  If anybody interests in
the script I attach it. You can get same tables for powerpc, i386, etc.

Commentators, welcome use: egrep -v -- '-(mcpu|O2|g|Wall|endian)' for
your comments. I think all know about these GCC options even I know it.

All Experts, thank you for your knowledges!

All the best,

	Sergei

RFC

cma230|ebsa285|gps4020|aim711|aeb|snds|pid|integrator|e7t|edb7xxx

              -mthumb : cma230 aim711 pid
       -mcpu=arm7tdmi : cma230 gps4020 aim711 pid integrator e7t edb7xxx
    -mthumb-interwork : cma230 aim711 pid
                -Wall : cma230 ebsa285 gps4020 aim711 aeb pid integrator
      -Wpointer-arith : cma230 ebsa285 gps4020 aim711 aeb pid integrator
  -Wstrict-prototypes : cma230 ebsa285 gps4020 aim711 aeb pid integrator
             -Winline : cma230 ebsa285 gps4020 aim711 aeb pid integrator
              -Wundef : cma230 ebsa285 gps4020 aim711 aeb pid integrator
 -Woverloaded-virtual : cma230 ebsa285 gps4020 aim711 aeb pid integrator
                   -g : cma230 ebsa285 gps4020 aim711 aeb pid integrator
                  -O2 : cma230 ebsa285 gps4020 aim711 aeb pid integrator
  -ffunction-sections : cma230 ebsa285 gps4020 aim711 aeb pid integrator
      -fdata-sections : cma230 ebsa285 gps4020 aim711 aeb pid integrator
            -fno-rtti : cma230 ebsa285 gps4020 aim711 aeb pid integrator
      -fno-exceptions : cma230 ebsa285 gps4020 aim711 aeb pid integrator
          -fvtable-gc : cma230 ebsa285 gps4020 aim711 aeb pid integrator
      -finit-priority : cma230 ebsa285 gps4020 aim711 aeb pid integrator
      -mcpu=strongarm : ebsa285
         -mbig-endian : aim711 pid
-mno-short-load-words : aim711 e7t
         -mcpu=arm7di : aeb
           -mcpu=arm9 : pid integrator
  -fno-schedule-insns : integrator
        -mcpu=arm710c : edb7xxx

10 targe(s) processed

p2106|phycore229x|mcb2100|lpcmt|ea2468|nano|ipaq|cerfpda|brutus|assabet|
sa1100mm|flexanet|cerf|innovator|smdk2410|excalibur|aaed2000|uE250|mpc50
|xsengine|picasso|iop310|ixdp425|prpmc1100|iq80321|grg|eb55|eb42|at91sam

              -mthumb : p2106 phycore229x mcb2100 lpcmt ea2468 eb55 eb42
    -mthumb-interwork : p2106 phycore229x mcb2100 lpcmt ea2468 eb55 eb42
       -mcpu=arm7tdmi : p2106 phycore229x mcb2100 lpcmt ea2468 eb55 eb42
-mno-short-load-words : p2106 phycore229x mcb2100 lpcmt ea2468 eb55 eb42
                -Wall : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
      -Wpointer-arith : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
  -Wstrict-prototypes : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
             -Winline : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
              -Wundef : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
 -Woverloaded-virtual : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
                   -g : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
                  -O2 : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
  -ffunction-sections : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
      -fdata-sections : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
            -fno-rtti : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
      -fno-exceptions : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
          -fvtable-gc : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
      -finit-priority : p2106 phycore229x mcb2100 lpcmt ea2468 nano ipaq
  -mcpu=strongarm1100 : nano ipaq cerfpda brutus assabet sa1100mm flexanet
         -mapcs-frame : sa1100mm uE250 mpc50 xsengine picasso iop310 ixdp425
           -mcpu=arm9 : innovator smdk2410 excalibur aaed2000
         -fno-builtin : uE250 xsengine picasso
         -mcpu=xscale : mpc50 iop310 ixdp425 prpmc1100 iq80321 grg
         -mbig-endian : ixdp425 prpmc1100 grg mace1 mac7100evb
            -gdwarf-2 : mace1 mac7100evb

35 targe(s) processed

Note: the tables were got as "cflagseek hal/arm/*/*/*/*{,/*}"

Attachment: cflagseek
Description: Text document

-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

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