- Mar 05, 2011
-
-
Jakob Stoklund Olesen authored
This simplifies the code and makes it faster too. The interference patterns are saved for each candidate register. It will be reused for actually executing the split. Work in progress. llvm-svn: 127054
-
Jim Grosbach authored
llvm-svn: 127049
-
Eric Christopher authored
Patch by Johannes Schaub! Fixes PR8548 llvm-svn: 127047
-
- Mar 04, 2011
-
-
Eric Christopher authored
llvm-svn: 127043
-
Jakob Stoklund Olesen authored
llvm-svn: 127040
-
Bill Wendling authored
llvm-svn: 127038
-
Jakob Stoklund Olesen authored
It gives better results. Sometimes, a live range can be large and still have high spill weight. Such a range should not be spilled. llvm-svn: 127036
-
Bruno Cardoso Lopes authored
llvm-svn: 127034
-
Bruno Cardoso Lopes authored
Expands register/immediate pairs when the immediate is too large to fit in 16-bit field. Patch by Akira Hatanaka llvm-svn: 127032
-
Dan Gohman authored
bitcasts, which are really no-ops here. This fixes slowdowns on MultiSource/Applications/aha and others. llvm-svn: 127031
-
Bruno Cardoso Lopes authored
llvm-svn: 127029
-
Joerg Sonnenberger authored
that contain only letters, digits and the characters "_" and ".". llvm-svn: 127028
-
Bruno Cardoso Lopes authored
llvm-svn: 127027
-
Benjamin Kramer authored
inefficient file system buffering if the writes are not a multiple of the desired buffer size. Avoid this by limiting the large write to a multiple of the buffer size and copying the remainder into the buffer. Thanks to Dan for pointing this out. llvm-svn: 127026
-
Jakob Stoklund Olesen authored
Initially, slot indexes are quad-spaced. There is room for inserting up to 3 new instructions between the original instructions. When we run out of indexes between two instructions, renumber locally using double-spaced indexes. The original quad-spacing means that we catch up quickly, and we only have to renumber a handful of instructions to get a monotonic sequence. This is much faster than renumbering the whole function as we did before. llvm-svn: 127023
-
Nick Lewycky authored
llvm-svn: 127021
-
Bruno Cardoso Lopes authored
llvm-svn: 127020
-
Devang Patel authored
Disable ARMGlobalMerge on darwin. The debugger is not yet able to extract individual variable's info from merged global. llvm-svn: 127019
-
Bruno Cardoso Lopes authored
llvm-svn: 127017
-
Jakob Stoklund Olesen authored
You can't really predict how many indexes will be needed from the number of defs, so let's keep it simple. Also remove an extra empty index that was inserted after each basic block. It was intended for live-out ranges, but it was never used that way. llvm-svn: 127014
-
Benjamin Kramer authored
raw_ostream: If writing a string that is larger than the buffer, write it directly instead of doing many buffer-sized writes. This caps the number of write(2) calls per string to a maximum of 2. llvm-svn: 127010
-
Jakob Stoklund Olesen authored
llvm-svn: 127007
-
Jakob Stoklund Olesen authored
llvm-svn: 127006
-
Bruno Cardoso Lopes authored
llvm-svn: 127005
-
Bruno Cardoso Lopes authored
llvm-svn: 127003
-
Duncan Sands authored
type after type legalization has completed. Before then it may simply not be big enough to hold the shift amount, particularly on x86 which uses a very small type for shifts (this issue broke stuff in the past which is why LegalizeTypes carefully uses a large type for shift amounts). llvm-svn: 127000
-
Kalle Raiskila authored
There was a previous implementation with patterns that would have matched e.g. shl <v4i32> <i32>, but this is not valid LLVM IR so they never were selected. llvm-svn: 126998
-
Kalle Raiskila authored
A 'load <4 x i32>* null' crashes llc before this fix. llvm-svn: 126995
-
Nick Lewycky authored
in the urem case, though not the other way around. This is enough to get #3 from PR9343! llvm-svn: 126991
-
Nick Lewycky authored
"icmp pred %X, CI" and a number of examples where "%X = binop %Y, CI2". Some of these cases (div and rem) used to make it through opt -O2, but the others are probably now making code elsewhere redundant (probably instcombine). llvm-svn: 126988
-
Jakob Stoklund Olesen authored
Avoid colliding with the sentinels, hopefully unbreaking llvm-gcc-x86_64-linux-selfhost. llvm-svn: 126982
-
Andrew Trick authored
Fix the PendingQueue, then disable it because it's not required for the current schedulers' heuristics. Fix the logic for the unused list-ilp scheduler. llvm-svn: 126981
-
Devang Patel authored
llvm-svn: 126978
-
Jakob Stoklund Olesen authored
llvm-svn: 126975
-
Jakob Stoklund Olesen authored
This speeds up updateSSA() so it only accounts for 5% of the live range splitting time. llvm-svn: 126972
-
Eli Friedman authored
llvm-svn: 126970
-
Bill Wendling authored
it. It's been assumed up til now that it would be in its immediate successor. However, this isn't necessarily the case. It could be in one of its successor's successors. Modify the code to more thoroughly check for an 'eh.selector' call in successors. It only looks at a successor if we get there as a result of an unconditional branch. Testcase ObjC/exceptions-4.m in r126968. llvm-svn: 126969
-
Bob Wilson authored
Patch by Zonr Chang! llvm-svn: 126967
-
- Mar 03, 2011
-
-
Eli Friedman authored
llvm-svn: 126964
-
Joerg Sonnenberger authored
llvm-svn: 126963
-