Skip to content
Commit 1d9eb466 authored by Jakob Stoklund Olesen's avatar Jakob Stoklund Olesen
Browse files

Disable physical register coalescing when the number of live ranges for the

physreg becomes ridiculously high.

std::upper_bound may be log(N), but for sufficiently large live intervals, it
becomes log(N)*cachemiss = a long long time.

This patch improves coalescer time by 4500x for a function with 20000
function calls. The generated code is different, but not significantly worse -
the allocator hints are almost as good as physreg coalescing anyway.

llvm-svn: 98023
parent 408dcf60
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment