diff options
| author | Michael Liao <michael.liao@intel.com> | 2013-12-04 17:44:22 +0000 |
|---|---|---|
| committer | Michael Liao <michael.liao@intel.com> | 2013-12-04 17:44:22 +0000 |
| commit | 9a0e3f4823d887909688cab079e17ac14953ae5b (patch) | |
| tree | 383387c562f09a51370355a902cfe49ed0074d8e /llvm/lib/Target | |
| parent | 1d22b5d1c08d0d67e0415157d27b13e2428330e3 (diff) | |
| download | bcm5719-llvm-9a0e3f4823d887909688cab079e17ac14953ae5b.tar.gz bcm5719-llvm-9a0e3f4823d887909688cab079e17ac14953ae5b.zip | |
[X86] Check YMM31/ZMM31 as well
- No test case as there's no calling convention preserve YMM31/ZMM31 only
llvm-svn: 196391
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86VZeroUpper.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86VZeroUpper.cpp b/llvm/lib/Target/X86/X86VZeroUpper.cpp index a9446529494..66ae9c2d7f9 100644 --- a/llvm/lib/Target/X86/X86VZeroUpper.cpp +++ b/llvm/lib/Target/X86/X86VZeroUpper.cpp @@ -122,11 +122,11 @@ static bool checkFnHasLiveInYmm(MachineRegisterInfo &MRI) { } static bool clobbersAllYmmRegs(const MachineOperand &MO) { - for (unsigned reg = X86::YMM0; reg < X86::YMM31; ++reg) { + for (unsigned reg = X86::YMM0; reg <= X86::YMM31; ++reg) { if (!MO.clobbersPhysReg(reg)) return false; } - for (unsigned reg = X86::ZMM0; reg < X86::ZMM31; ++reg) { + for (unsigned reg = X86::ZMM0; reg <= X86::ZMM31; ++reg) { if (!MO.clobbersPhysReg(reg)) return false; } @@ -155,11 +155,11 @@ static bool clobbersAnyYmmReg(MachineInstr *MI) { const MachineOperand &MO = MI->getOperand(i); if (!MO.isRegMask()) continue; - for (unsigned reg = X86::YMM0; reg < X86::YMM31; ++reg) { + for (unsigned reg = X86::YMM0; reg <= X86::YMM31; ++reg) { if (MO.clobbersPhysReg(reg)) return true; } - for (unsigned reg = X86::ZMM0; reg < X86::ZMM31; ++reg) { + for (unsigned reg = X86::ZMM0; reg <= X86::ZMM31; ++reg) { if (MO.clobbersPhysReg(reg)) return true; } |

