1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/lib
Jakob Stoklund Olesen 46444bd655 Cache intermediate results during traceSiblingValue.
In some cases such as interpreters using indirectbr, the CFG can be very
complicated, and live range splitting may be forced to insert a large
number of phi-defs.  When that happens, traceSiblingValue can spend a
lot of time zipping around in the CFG looking for defs and reloads.

This patch causes more information to be cached in SibValues, and the
cached values are used to terminate searches early.  This speeds up
spilling by 20x in one interpreter test case.  For more typical code,
this is just a 10% speedup of spilling.

llvm-svn: 139247
2011-09-07 19:07:31 +00:00
..
Analysis memset_pattern16 uses a 16 BYTE pattern, not a 16 BIT pattern. Add comments to that effect. 2011-09-06 23:43:26 +00:00
Archive Rewrite the CMake build to use explicit dependencies between libraries, 2011-07-29 00:14:25 +00:00
AsmParser Auto upgrade the old EH scheme to use the new one. This is on a trial basis. If 2011-08-27 06:11:03 +00:00
Bitcode Don't forget to add the landingpad and resume instructions to the InstructionList. 2011-09-01 00:50:20 +00:00
CodeGen Cache intermediate results during traceSiblingValue. 2011-09-07 19:07:31 +00:00
CompilerDriver Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
ExecutionEngine Move TargetRegistry and TargetSelect from Target to Support where they belong. 2011-08-24 18:08:43 +00:00
Linker switch to the new struct api. 2011-08-12 18:07:26 +00:00
MC Refactor instprinter and mcdisassembler to take a SubtargetInfo. Add -mattr= handling to llvm-mc. Reviewed by Owen Anderson. 2011-09-07 17:24:38 +00:00
Object Teach macho-dump to dump the uleb128s referred to by linkedit_data segments. 2011-08-30 22:10:58 +00:00
Support Add AMDIL as valid target triple to LLVM. 2011-08-29 15:44:55 +00:00
Target Fix atomic load and store on x86 to pass -verify-machineinstrs (and possibly fix some subtle bugs involving passes which check mayStore()). 2011-09-07 18:48:32 +00:00
Transforms Add -verify-indvars for imperfect SCEV trip count verification after indvars. 2011-09-06 20:20:38 +00:00
VMCore Add codegen support for vector select (in the IR this means a select 2011-09-06 19:07:46 +00:00
CMakeLists.txt Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
Makefile