Skip to content
  • Andrew Trick's avatar
    Increased the register pressure limit on x86_64 from 8 to 12 · 641e2d4f
    Andrew Trick authored
    regs. This is the only change in this checkin that may affects the
    default scheduler. With better register tracking and heuristics, it
    doesn't make sense to artificially lower the register limit so much.
    
    Added -sched-high-latency-cycles and X86InstrInfo::isHighLatencyDef to
    give the scheduler a way to account for div and sqrt on targets that
    don't have an itinerary. It is currently defaults to 10 (the actual
    number doesn't matter much), but only takes effect on non-default
    schedulers: list-hybrid and list-ilp.
    
    Added several heuristics that can be individually disabled for the
    non-default sched=list-ilp mode. This helps us determine how much
    better we can do on a given benchmark than the default
    scheduler. Certain compute intensive loops run much faster in this
    mode with the right set of heuristics, and it doesn't seem to have
    much negative impact elsewhere. Not all of the heuristics are needed,
    but we still need to experiment to decide which should be disabled by
    default for sched=list-ilp.
    
    llvm-svn: 127067
    641e2d4f
Loading