Enable GCC with CMOVxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

I'm trying to enable gcc 4.3.2 on Ubuntu to compile C code with
support of conditional moves. (and Conditional Moves as the only
enabled optimization)

I can see CMOVxx in the assembly compiled with "-O" option. However,
no CMOVxx is found in the assembly generated with just
"-fif-conversion" option.

More surprisingly (well, at least to me), I listed all the enabled
optimization options of "-O", and put them in one line. Then I
compiled the same code as:

gcc -S -falign-loops                 -fargument-alias
-fasynchronous-unwind-tables   -fbranch-count-reg            -fcommon
                   -fcprop-registers             -fdce
        -fdefer-pop                   -fdse
-fearly-inlining              -fgcse-lm
-fguess-branch-probability    -fif-conversion
-fif-conversion2              -finline-functions-called-once
-fipa-pure-const              -fipa-reference               -fivopts
                  -fjump-tables                 -fmerge-constants
       -fmove-loop-invariants        -fomit-frame-pointer
-fpeephole                    -frename-registers
-frerun-cse-after-loop        -fsched-interblock
-fsched-spec                  -fsched-stalled-insns-dep
-fsigned-zeros                -fsplit-ivs-in-unroller
-fsplit-wide-types            -ftoplevel-reorder
-ftrapping-math               -ftree-ccp                    -ftree-ch
                  -ftree-copy-prop              -ftree-copyrename
       -ftree-cselim                 -ftree-dce
-ftree-dominator-opts         -ftree-dse                    -ftree-fre
                  -ftree-loop-im                -ftree-loop-ivcanon
       -ftree-loop-optimize          -ftree-reassoc
-ftree-salias                 -ftree-scev-cprop
-ftree-sink                   -ftree-sra                    -ftree-ter
                  -ftree-vect-loop-version      -funit-at-a-time
       -fvar-tracking                -fvect-cost-model
-fweb -o test.s test.c

And there is still no conditional moves in the assembly. I assume the
list of options would be equivalent to -O.

Please advise what you think of this problem.

My guess is that the order of the optimization options may be making
the difference.

Thank you very much!

LC

-- 
Best regards,

Lingchuan Meng

[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux