diff options
author | Akira Hatanaka <ahatanaka@apple.com> | 2014-09-20 01:31:09 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@apple.com> | 2014-09-20 01:31:09 +0000 |
commit | 416efb5f909e45f67ee81d382a708fc41666c5c6 (patch) | |
tree | dd2f864444150562aa4002e6e377329aab82cd54 /llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp | |
parent | f4dc456eef596bbc7ea281454f34c2dd80ddd2f3 (diff) | |
download | bcm5719-llvm-416efb5f909e45f67ee81d382a708fc41666c5c6.tar.gz bcm5719-llvm-416efb5f909e45f67ee81d382a708fc41666c5c6.zip |
Fix bugs in cpuid.h.
This commit makes two changes:
- Remove the push and pop instructions that were saving and restoring %ebx
before and after cpuid in 32-bit pic mode. We were doing this to ensure we
don't lose the GOT address in pic register %ebx, but this isn't necessary
because the GOT address is kept in a virtual register.
- In 64-bit mode, preserve base register %rbx around cpuid.
This fixes PR20311 and rdar://problem/17686779.
llvm-svn: 218173
Diffstat (limited to 'llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp')
0 files changed, 0 insertions, 0 deletions