]> granicus.if.org Git - llvm/commit
[GlobalISel] Add ISel support for @llvm.lifetime.start and @llvm.lifetime.end
authorJessica Paquette <jpaquette@apple.com>
Mon, 28 Jan 2019 19:22:29 +0000 (19:22 +0000)
committerJessica Paquette <jpaquette@apple.com>
Mon, 28 Jan 2019 19:22:29 +0000 (19:22 +0000)
commit728ff6c67cc1ebad9d96e165da1c98ac0735d227
tree1ae433da095f17083097e52d3c5da2616c3e6c6d
parent98d9d8b1f185e2f9b7d02a8f05a9c00e095009fb
[GlobalISel] Add ISel support for @llvm.lifetime.start and @llvm.lifetime.end

This adds ISel support for lifetime markers in opt levels above O0.

It also updates the arm64-irtranslator test, and updates some AArch64 tests that
use them for added coverage.

It also adds a testcase taken from the X86 codegen tests which verified a bug
caused by lifetime markers + stack colouring in the past. This is intended to
make sure that GISel doesn't re-introduce the bug.

(This is basically a straight copy from what SelectionDAG does in
SelectionDAGBuilder.cpp)

https://reviews.llvm.org/D57187

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@352410 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/GlobalISel/IRTranslator.cpp
test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
test/CodeGen/AArch64/GlobalISel/dynamic-alloca-lifetime.ll [new file with mode: 0644]
test/CodeGen/AArch64/mingw-refptr.ll
test/CodeGen/AArch64/stack_guard_remat.ll