diff options
author | Quentin Colombet <qcolombet@apple.com> | 2016-04-22 18:09:14 +0000 |
---|---|---|
committer | Quentin Colombet <qcolombet@apple.com> | 2016-04-22 18:09:14 +0000 |
commit | 9598f101042a3bc1d8addb03c4e8a539cd69aa8a (patch) | |
tree | e0c343c119492fa8fc5841cf37a2bdcf5dea70d9 /clang/lib/CodeGen/ModuleBuilder.cpp | |
parent | 8237008897c53be143e528c18a97dc545831ae04 (diff) | |
download | llvm-9598f101042a3bc1d8addb03c4e8a539cd69aa8a.zip llvm-9598f101042a3bc1d8addb03c4e8a539cd69aa8a.tar.gz llvm-9598f101042a3bc1d8addb03c4e8a539cd69aa8a.tar.bz2 |
[AArch64][AdvSIMDScalar] Update the kill flags correctly.
We used to simply set the kill flags to true when transforming a scalar
instruction to a vector one.
SrcScalar1 = copy SrcVector1
... = opScalar SrcScalar1
=>
SrcScalar1 = copy SrcVector1
... = opVector SrcVector1<kill>
This is obviously wrong. The proper update consists in:
1. Propagate the kill status from the copy to the new opVector
2. Reset the kill status on the copy, since the live-range of
SrcVector1 got extended.
This fixes some of the machine verifier errors for AArch64 with make check.
llvm-svn: 267180
Diffstat (limited to 'clang/lib/CodeGen/ModuleBuilder.cpp')
0 files changed, 0 insertions, 0 deletions