aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/X86/X86InstrInfo.cpp
AgeCommit message (Expand)AuthorFilesLines
2016-09-12[X86] Copy imp-uses when folding tailcall into conditional branch.Ahmed Bougacha1-1/+1
2016-09-11CodeGen: Give MachineBasicBlock::reverse_iterator a handle to the current MIDuncan P. N. Exon Smith1-5/+4
2016-09-11[AVX-512] Add VPTERNLOG to load folding tables.Craig Topper1-0/+18
2016-09-11[X86] Make a helper method into a static function local to the cpp file.Craig Topper1-8/+10
2016-09-11[CodeGen] Split out the notions of MI invariance and MI dereferenceability.Justin Lebar1-1/+3
2016-09-10[CodeGen] Rename MachineInstr::isInvariantLoad to isDereferenceableInvariantL...Justin Lebar1-1/+1
2016-09-09X86: Fold tail calls into conditional branches also for 64-bit (PR26302)Hans Wennborg1-2/+12
2016-09-09[AVX-512] Add VPCMP instructions to the load folding tables and make them com...Craig Topper1-1/+56
2016-09-08Win64: Don't use REX prefix for direct tail callsHans Wennborg1-1/+0
2016-09-07X86: Fold tail calls into conditional branches where possible (PR26302)Hans Wennborg1-0/+69
2016-09-07[AVX-512] Add support for commuting masked instructions in findCommutedOpIndi...Craig Topper1-1/+23
2016-09-05[AVX-512] Integrate mask register copying more completely into X86InstrInfo::...Craig Topper1-68/+53
2016-09-05[AVX-512] Simplify X86InstrInfo::copyPhysReg for 128/256-bit vectors with AVX...Craig Topper1-20/+7
2016-09-05[X86] Remove FsVMOVAPSrm/FsVMOVAPDrm/FsMOVAPSrm/FsMOVAPDrm. Due to their plac...Craig Topper1-12/+0
2016-09-04[AVX-512] Add EVEX encoded scalar FMA intrinsic instructions to isNonFoldable...Craig Topper1-12/+24
2016-09-03[AVX-512] Add integer ADD/SUB instructions to load folding tables. Add an AVX...Craig Topper1-0/+44
2016-09-03[AVX-512] Add EVEX encoded VPCMPEQ and VPCMPGT to the load folding tables.Craig Topper1-0/+24
2016-09-02[AVX-512] Add execution domain fixing for logical operations with broadcast l...Craig Topper1-0/+80
2016-09-01[X86] Loosen memory folding requirements for cvtdq2pd and cvtps2pd instructions.Andrey Turetskiy1-2/+2
2016-09-01[XRay][NFC] Promote isTailCall() as virtual in TargetInstrInfo.Dean Michael Berris1-0/+23
2016-08-28[X86] Rename PABSB/D/W instructions to be consistent with SSE/AVX instruction...Craig Topper1-9/+9
2016-08-27[AVX-512] Allow EVEX encoding unordered/ordered/equal/notequal VCMPPS/PD/SS/S...Craig Topper1-2/+18
2016-08-27[X86] Enable FR32/FR64 cmpeq/cmpne/cmpunord/cmpord to be commuted.Craig Topper1-0/+8
2016-08-27[AVX-512] Add load folding for EVEX vcmpps/pd/ss/sd.Craig Topper1-0/+8
2016-08-26[X86][SSE] Add CMPSS/CMPSD intrinsic scalar load folding support.Craig Topper1-0/+4
2016-08-25[X86] Fix indentation per coding standards. NFCCraig Topper1-9/+9
2016-08-24[X86][SSE] Add MINSD/MAXSD/MINSS/MAXSS intrinsic scalar load folding supportSimon Pilgrim1-0/+4
2016-08-14[AVX-512] Add masked commutable floating point max/min instructions to foldin...Craig Topper1-0/+24
2016-08-14[AVX-512] Add masked logical operations to memory folding tables.Craig Topper1-2/+98
2016-08-13[X86] Add a check of isCommutable at the top of X86InstrInfo::findCommutedOpI...Craig Topper1-0/+3
2016-08-11X86-FMA3: Implemented commute transformation for EVEX/AVX512 FMA3 opcodes.Vyacheslav Klochkov1-535/+105
2016-08-11Avoid false dependencies of undef machine operandsMarina Yatsina1-1/+1
2016-08-09[X86][SSE] Fix memory folding of (v)roundsd / (v)roundssSimon Pilgrim1-0/+8
2016-08-09[X86] Reduce duplicated code in the execution domain lookup functions by pass...Craig Topper1-37/+17
2016-08-09[AVX-512] Add support for execution domain switching masked logical ops betwe...Craig Topper1-11/+137
2016-08-09[X86] Remove the Fv packed logical operation alias instructions. Replace them...Craig Topper1-24/+0
2016-08-09X86InstrInfo: Update liveness in classifyLea()Matthias Braun1-8/+13
2016-08-07[AVX-512] Add 512-bit logical operations to load folding tables. Add avx512f ...Craig Topper1-0/+16
2016-08-07[AVX-512] Add EVEX encoded floating point MAX/MIN instructions to the load fo...Craig Topper1-3/+35
2016-08-07[X86] Add commutable floating point max/min instructions to the load folding ...Craig Topper1-0/+20
2016-08-06[AVX-512] Add SQRT/RCP14/RNDSCALE to hasUndefRegUpdate.Craig Topper1-0/+16
2016-08-06[AVX-512] Add AVX-512 scalar CVT instructions to hasUndefRegUpdate.Craig Topper1-1/+25
2016-08-06[X86] Add VRCPSSr_Int, VRSQRTSSr_Int, VSQRTSSr_Int, and VSQRTSDr_Int to hasUn...Craig Topper1-0/+4
2016-08-06[X86][SSE] Enable commutation between MOVHLPS and UNPCKHPDSimon Pilgrim1-0/+16
2016-08-01[AVX-512] Fix duplicate column in AVX512 execution dependency table that was ...Craig Topper1-18/+18
2016-08-01[X86] Move mask register handling into the main switch of getLoadStoreRegOpco...Craig Topper1-22/+6
2016-07-31[AVX512] Always use EVEX encodings for 128/256-bit move instructions in getLo...Craig Topper1-24/+15
2016-07-31[AVX512] Add VLX packed move instructions to the execution dependency fix pas...Craig Topper1-5/+15
2016-07-31[AVX512] Move FR32X/FR64X handling in getLoadStoreRegOpcode into the main swi...Craig Topper1-15/+11
2016-07-31[AVX512] Stop treating VR512 specially in getLoadStoreRegOpcode and use the r...Craig Topper1-3/+1