There is an info on it in gccint.
Namelly peephole2 described well.
The best thing to do is just:
Get _small_ complette C example which results in the code to be optimized.
Compile it with -S -O2 -dp flags once and -S -O2 -dP second time.
Provide optimal solution.
Post it (or send me).
I'll write a peephole.

cheers,
~d

P.S. before makeing any changes to gcc code, post it here.


On Tuesday 19 August 2003 22:53, Takahashi, Chris wrote:
> I have been looking at code generated and I see a lot of inefficient code
> generated.  When testing parts of bit fields I get the following code:
>
> if (!elemofbitfield) {
>
> bit.b    const,rX
> clr.b    r15
> adc.b    r15
> and.b    #-1,r15
> cmp      #lo(0),r15
> jne      .Lxxx
>
> This could be accomplished by:
> bit.b    const,rX
> jc       .Lxxx
>
> It seems silly to waist all this.
>
> I also see a lot of instances of this:
>
> mov      rX,rY
> mov      rY,rX
>
> when the following has the same result and side effects:
>
> mov      rX,rY
>
> I have also seen something similar with long int moves.
>
> I've been looking into writing something for the peephole2 optimizer but I
> can't figure out the syntax.  Is there any help on this topic past 'info
> gccint'?
>
> -Chris Takahashi
>
>
> -------------------------------------------------------
> This SF.net email is sponsored by Dice.com.
> Did you know that Dice has over 25,000 tech jobs available today? From
> careers in IT to Engineering to Tech Sales, Dice has tech jobs from the
> best hiring companies. http://www.dice.com/index.epl?rel_code=104
> _______________________________________________
> Mspgcc-users mailing list
> Mspgcc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mspgcc-users

-- 
/*****************************************************************
     ("`-''-/").___..--''"`-._     (\   Dimmy the Wild     UA1ACZ
      `6_ 6  )   `-.  (     ).`-.__.`)  State Polytechnical Univ.
      (_Y_.)'  ._   )  `._ `. ``-..-'   Radio-Physics Departament
    _..`--'_..-_/  /--'_.' ,'           Saint Petersburg,  Russia
   (il),-''  (li),'  ((!.-'             +7 (812) 5403923, 5585314
 *****************************************************************/


Reply via email to