llvm-6502/lib
Pete Cooper f9f04c25b2 [Fast-ISel] Clear kill flags on registers replaced by updateValueMap.
When selecting an extract instruction, we don't actually generate code but instead work out which register we are reading, and rewrite uses of the extract def to the source register.  This is done via updateValueMap,.

However, its possible that the source register we are rewriting *to* to also have uses.  If those uses are after a kill of the value we are rewriting *from* then we have uses after a kill and the verifier fails.

This code checks for the case where the to register is also used, and if so it clears all kill on the from register.  This is conservative, but better that always clearing kills on the from register.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236897 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-08 20:46:54 +00:00
..
Analysis [BasicAA] Fix zext & sext handling 2015-05-08 18:58:55 +00:00
AsmParser [opaque pointer type] Pass GlobalAlias the actual pointer type rather than decomposing it into pointee type + address space 2015-04-29 21:22:39 +00:00
Bitcode [opaque pointer type] Explicit pointee type for GEPOperator/GEPConstantExpr. 2015-05-08 00:42:26 +00:00
CodeGen [Fast-ISel] Clear kill flags on registers replaced by updateValueMap. 2015-05-08 20:46:54 +00:00
DebugInfo A few fixes for llvm-symbolizer on Windows. 2015-05-06 22:26:30 +00:00
ExecutionEngine [Orc] Reapply r236465 with fixes for the MSVC bots. 2015-05-05 17:37:18 +00:00
Fuzzer Update CMake flags, LibFuzzer comments and docs for new -fsanitize-coverage= flags. 2015-05-07 23:33:24 +00:00
IR Replace branch-to-unreachable with assertion. 2015-05-08 18:52:28 +00:00
IRReader Use ADDITIONAL_HEADER_DIRS in all LLVM CMake projects. 2015-02-11 03:28:02 +00:00
LineEditor Use ADDITIONAL_HEADER_DIRS in all LLVM CMake projects. 2015-02-11 03:28:02 +00:00
Linker [opaque pointer type] Pass GlobalAlias the actual pointer type rather than decomposing it into pointee type + address space 2015-04-29 21:22:39 +00:00
LTO LTO: Add API to choose whether to embed uselists 2015-04-27 23:38:54 +00:00
MC MC: Skip names of temporary symbols in object streamer 2015-05-06 21:34:34 +00:00
Object [llvm-readobj/obj2yaml/yaml2obj] Support MIPS machine ELF header flags 2015-05-08 07:04:59 +00:00
Option Option parsing: properly handle flag aliases for joined options (PR23394) 2015-05-04 18:00:13 +00:00
Passes [PM] Fixup for r231556 where I missed a dependency on intrinsics 2015-03-07 09:08:20 +00:00
ProfileData InstrProf: Simplify looking up sections for coverage data 2015-05-07 00:31:58 +00:00
Support [ARM] Reject invalid -march values 2015-05-08 12:52:02 +00:00
TableGen [TableGen] Replace 'static_cast' with 'cast'. 2015-05-04 01:35:42 +00:00
Target [Hexagon] Generate more hardware loops 2015-05-08 20:18:21 +00:00
Transforms This change is refactoring only. It moves basic block normalization for invokes to happen before replacement of a call with safepoint in "ReplaceWithStatepoint". Previously it was partly done before replacement of calls with safepoint and partly after call replacement but before RAUW's for gc_relocates, which was confusing. 2015-05-08 11:59:09 +00:00
CMakeLists.txt [PM] Create a separate library for high-level pass management code. 2015-03-07 09:02:36 +00:00
LLVMBuild.txt [PM] Create a separate library for high-level pass management code. 2015-03-07 09:02:36 +00:00
Makefile [PM] Create a separate library for high-level pass management code. 2015-03-07 09:02:36 +00:00