Fix PR33028
authorMichael Liao <michael.hliao@gmail.com>
Wed, 17 May 2017 21:48:00 +0000 (21:48 +0000)
committerMichael Liao <michael.hliao@gmail.com>
Wed, 17 May 2017 21:48:00 +0000 (21:48 +0000)
commitab12984634c6614b5cb17390e0190562d248ed77
tree6802b3157dbf5d7bdf2f52fa2170c822acca52b1
parenta53292779a932189141417aec2ba3f92564bae3c
Fix PR33028

- '-verify-mahcineinstrs' starts to complain allocatable live-in physical
  registers on non-entry or non-landing-pad basic blocks.
- Refactor the XBEGIN translation to define EAX on a dedicated fallback code
  path due to XABORT. Add a pseudo instruction to define EAX explicitly to
  avoid add physical register live-in.

Differential Revision: https://reviews.llvm.org/D33168

llvm-svn: 303306
llvm/lib/Target/X86/X86ISelLowering.cpp
llvm/lib/Target/X86/X86InstrTSX.td
llvm/test/CodeGen/X86/rtm.ll