]> granicus.if.org Git - llvm/commit
GlobalISel: stop localizer putting constants before EH_LABELs
authorTim Northover <tnorthover@apple.com>
Thu, 20 Jul 2017 22:58:26 +0000 (22:58 +0000)
committerTim Northover <tnorthover@apple.com>
Thu, 20 Jul 2017 22:58:26 +0000 (22:58 +0000)
commita1c5e695516444ea3b9ffe47e7296db333b06e0f
treef466e15206ebbc539095bbef026ad840e610b887
parent03fcc96f91895be492a5d2384760a10b3321ac4d
GlobalISel: stop localizer putting constants before EH_LABELs

If the localizer pass puts one of its constants before the label that tells the
unwinder "jump here to handle your exception" then control-flow will skip it,
leaving uninitialized registers at runtime. That's bad.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@308687 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/GlobalISel/Localizer.cpp
test/CodeGen/AArch64/GlobalISel/localizer.mir