This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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]

Re: [PATCH] PowerPC - ilogb[f|l] optimization for POWER7


On 05/10/2012 12:55 PM, Richard Henderson wrote:
> Is this really so much better than what the compiler can generate?
> If the dispatch group split is that critical, you ought to fix it
> in the scheduler -- it's not like these are the only two double->int
> conversions in the entire library.
>
> The documentation for this macro is sorely lacking too.  At first I
> thought you meant EXTRACT_WORDS64 but hadn't known what the macro
> was supposed to be called.
Currently, yes it is. For POWER7, on FP<->INT transformations using unions or casts
the compiler will not reschedule neither, in case the reschedule is not possible, 
it will generate dispatch groups split by inserting an 'ori 2,0,0' between the
load and/or store instructions. And libm uses it extensively.

I already point out some improvements I got by reimplementing somes FP<->INT macros
in "sysdeps/generic/math_private.h" by manually inserting the dispatch group split,
but I'm not sure why compiler guys didn't take a look at it yet.

-- 
Adhemerval Zanella Netto
  Software Engineer
  Linux Technology Center Brazil
  Toolchain / GLIBC on Power Architecture
  azanella@linux.vnet.ibm.com / azanella@br.ibm.com
  +55 61 8642-9890


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