- Feb 04, 2011
-
-
Nick Lewycky authored
purpose. Fixes PR9080! llvm-svn: 124903
-
Jakob Stoklund Olesen authored
If interference reaches the last split point, it is effectively live out and should be marked as 'MustSpill'. This can make a difference when the terminator uses a register. There is no way that register can be reused in the outgoing CFG bundle, even if it isn't live out. llvm-svn: 124900
-
Jason W Kim authored
5 to match the current doc. Added FIXME reminder Make it really configurable later. llvm-svn: 124899
-
Jason W Kim authored
Teach ARM/MC/ELF to handle R_ARM_JUMP24 relocation type for conditional jumps. (yes, this is different from R_ARM_CALL) - Adds a new method getARMBranchTargetOpValue() which handles the necessary distinction between the conditional and unconditional br/bl needed for ARM/ELF At least for ARM mode, the needed fixup for conditional versus unconditional br/bl is identical, but the ARM docs and existing ARM tools expect this reloc type... Added a few FIXME's for future naming fixups in ARMInstrInfo.td llvm-svn: 124895
-
Jakob Stoklund Olesen authored
A live range cannot be split everywhere in a basic block. A split must go before the first terminator, and if the variable is live into a landing pad, the split must happen before the call that can throw. llvm-svn: 124894
-
Jakob Stoklund Olesen authored
We should not be attempting a region split if it won't lead to at least one directly allocatable interval. That could cause infinite splitting loops. llvm-svn: 124893
-
Daniel Dunbar authored
custom conversion functions). llvm-svn: 124872
-
Daniel Dunbar authored
by Clang. llvm-svn: 124871
-
Daniel Dunbar authored
llvm-svn: 124870
-
David Greene authored
Silence uninitialized value warnings. llvm-svn: 124869
-
David Greene authored
[AVX] Support VSINSERTF128 with more patterns and appropriate infrastructure. This makes lowering 256-bit vectors to 128-bit vectors simple when 256-bit vector support is not available. llvm-svn: 124868
-
NAKAMURA Takumi authored
llvm-svn: 124864
-
Oscar Fuentes authored
llvm-svn: 124857
-
Oscar Fuentes authored
llvm-svn: 124854
-
Andrew Trick authored
precisely track pressure on a selection DAG, but we can at least keep it balanced. This design accounts for various interesting aspects of selection DAGS: register and subregister copies, glued nodes, dead nodes, unused registers, etc. Added SUnit::NumRegDefsLeft and ScheduleDAGSDNodes::RegDefIter. Note: I disabled PrescheduleNodesWithMultipleUses when register pressure is enabled, based on no evidence other than I don't think it makes sense to have both enabled. llvm-svn: 124853
-
Devang Patel authored
DebugLoc associated with a machine instruction is used to emit location entries. DebugLoc associated with a DBG_VALUE is used to identify lexical scope of the variable. After register allocation, while inserting DBG_VALUE remember original debug location for the first instruction and reuse it, otherwise dwarf writer may be mislead in identifying the variable's scope. llvm-svn: 124845
-
Evan Cheng authored
llvm-svn: 124843
-
Jakob Stoklund Olesen authored
llvm-svn: 124842
-
Jakob Stoklund Olesen authored
When the live range is live through a block that doesn't use the register, but that has interference, region splitting wants to split at the top and bottom of the basic block. llvm-svn: 124839
-
Jakob Stoklund Olesen authored
Allow a live range to end with a kill flag, but don't allow a kill flag that doesn't end the live range. This makes the machine code verifier more useful during register allocation when kill flag computation is deferred. llvm-svn: 124838
-
Jim Grosbach authored
llvm-svn: 124832
-
Bob Wilson authored
llvm-svn: 124831
-
Bob Wilson authored
llvm-svn: 124830
-
Bob Wilson authored
llvm-svn: 124829
-
Andrew Trick authored
llvm-svn: 124827
-
- Feb 03, 2011
-
-
Benjamin Kramer authored
SimplifyCFG: Also transform switches that represent a range comparison but are not sorted into sub+icmp. This transforms another 1000 switches in gcc.c. llvm-svn: 124826
-
Oscar Fuentes authored
macros. llvm-svn: 124824
-
Rafael Espindola authored
them on install. Before we would have LLVMgold.so on the build directory but libLLVMgold.so on the install dir. llvm-svn: 124821
-
Bob Wilson authored
llvm-svn: 124819
-
Oscar Fuentes authored
library. Installs tblgen (required by Clang). Translates handling of user settings and platform-dependant options to its own file, where it can included by another project. Installs the .cmake files required by projects like Clang. llvm-svn: 124816
-
Jakob Stoklund Olesen authored
llvm-svn: 124815
-
Jakob Stoklund Olesen authored
llvm-svn: 124814
-
Jakob Stoklund Olesen authored
llvm-svn: 124813
-
Jakob Stoklund Olesen authored
If the found value is not live-through the block, we should only add liveness up to the requested slot index. When the value is live-through, the whole block should be colored. Bug found by SSA verification in the machine code verifier. llvm-svn: 124812
-
Jakob Stoklund Olesen authored
These end points come from the inserted copies, and can be passed directly to useIntv. This simplifies the coloring code. llvm-svn: 124799
-
Jakob Stoklund Olesen authored
llvm-svn: 124798
-
David Greene authored
[AVX] VEXTRACTF128 support. This commit includes patterns for matching EXTRACT_SUBVECTOR to VEXTRACTF128 along with support routines to examine and translate index values. VINSERTF128 comes next. With these two in place we can begin supporting more AVX operations as INSERT/EXTRACT can be used as a fallback when 256-bit support is not available. llvm-svn: 124797
-
Richard Osborne authored
llvm-svn: 124794
-
NAKAMURA Takumi authored
llvm-svn: 124793
-
Duncan Sands authored
auto-simplifier). This has a big impact on Ada code, but not much else. Unfortunately the impact is mostly negative! This is due to PR9004 (aka SCCP failing to resolve conditional branch conditions in the destination blocks of the branch), in which simple correlated expressions are not resolved but complicated ones are, so simplifying has a bad effect! llvm-svn: 124788
-