------- Comment #4 from tbptbp at gmail dot com 2006-08-11 06:43 ------- Subject: Re: missed optimization, redundant scalar SSE comparisons
On 11 Aug 2006 06:25:09 -0000, pinskia at gcc dot gnu dot org <[EMAIL PROTECTED]> wrote: > ------- Comment #3 from pinskia at gcc dot gnu dot org 2006-08-11 06:25 > ------- > Hmm, now it is because the order int the compares are different: > 418f01: comiss %xmm0,%xmm1 > 418f04: seta %al > 418f07: comiss %xmm1,%xmm0 > > see how the first is xmm0, xmm1 While the second is xmm1, xmm0. > > Can you file a seperate bug with the source to that function (and make sure it > compiles on its own) because that is a different bug as far as I can tell? I suppose i could, but that would be an extremly fragile testcase; i mean when i let that function (the version with uchars) inline, then the first 2 comparisons get fused. The fact is that you cannot reliably trigger "optimal" codegen, as far as i can see. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28691