SuccessChanges

Summary

  1. [X86] Use timm in MMX pinsrw/pextrw isel patterns. Add missing test (details)
  2. [llvm-readobj] flush output before crash (details)
  3. [X86] Convert tbm_bextri_u32/tbm_bextri_u64 intrinsics TargetConstant (details)
Commit a34f13f2bab3bb3a25ce999defb616558cbc3f4f by craig.topper
[X86] Use timm in MMX pinsrw/pextrw isel patterns. Add missing test
cases.
This fixes an isel failure after r372338.
llvm-svn: 372371
The file was modifiedllvm/lib/Target/X86/X86InstrMMX.td
The file was modifiedllvm/test/CodeGen/X86/mmx-intrinsics.ll
Commit e03663fbb8469e54e18666efcc3c0b691cc8fb1f by Yuanfang Chen
[llvm-readobj] flush output before crash
Otherwise the output could be lost.
llvm-svn: 372372
The file was modifiedllvm/tools/llvm-readobj/ARMWinEHPrinter.cpp
Commit 621c93ec1fd804f736cbcb58282ef037fa1a9c48 by craig.topper
[X86] Convert tbm_bextri_u32/tbm_bextri_u64 intrinsics TargetConstant
argument to a regular Constant during lowering.
We reuse an ISD opcode here that can be reached from BMI that doesn't
require it to be an immediate. Our isel patterns to match the TBM
immediate form require a Constant and not a TargetConstant.
We were accidentally getting the Constant due to a quirk of combineBEXTR
calling SimplifyDemandedBits. The call to SimplifyDemandedBits ended up
constant folding the TargetConstant to a regular Constant. But we should
probably instead be asserting if SimplifyDemandedBits on a
TargetConstant so we shouldn't rely on this behavior.
llvm-svn: 372373
The file was modifiedllvm/lib/Target/X86/X86IntrinsicsInfo.h
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp