llvm-project/llvm/lib
Craig Topper c06e53119b [X86] Use 128-bit vector instructions for f32/f64->i64 conversions on 32-bit targets with avx512dq and avx512vl instructions.
On 32-bit targets we can't use the scalar instruction so we
insert the scalar into a vector and use packed conversions.
Previously we used either v4f32->v4i64 or v4f64->v4i64 to avoid
some complexity creating target specific ISD opcodes for
v4f32->v2i64. But this causes extra vzeroupper instructions and
possibly frequency throttling on Intel CPUs.

This patch changes this to create a 128-bit vector and uses a
target specific ISD opcode if needed.
2019-12-24 11:20:10 -08:00
..
Analysis Temporarily revert "Reapply [LVI] Normalize pointer behavior" and "[LVI] Restructure caching" 2019-12-20 10:25:57 -08:00
AsmParser Rename DW_AT_LLVM_isysroot to DW_AT_LLVM_sysroot 2019-12-20 13:11:17 -08:00
BinaryFormat
Bitcode [LTO] Support for embedding bitcode section during LTO 2019-12-12 12:34:19 -08:00
Bitstream
CodeGen GlobalISel: Update syntax in debug printing 2019-12-24 10:37:36 -05:00
DebugInfo DebugInfo: Support dumping any exprloc as an expression 2019-12-23 19:18:47 -08:00
Demangle Revert "Add some missing includes to MicrosoftDemangle.cpp (PR44217)" 2019-12-04 11:10:07 -08:00
ExecutionEngine [ORC] De-register eh-frames in the RTDyldObjectLinkingLayer destructor. 2019-12-20 21:10:49 -08:00
Frontend [OpenMP] Introduce the OpenMP-IR-Builder 2019-12-11 14:38:49 -06:00
FuzzMutate
Fuzzer
IR Fix case style warnings in DIBuilder. NFC. 2019-12-23 07:27:18 +00:00
IRReader
LTO [ThinLTO] Show preserved symbols in DOT files 2019-12-18 18:33:15 +03:00
LineEditor
Linker
MC [NFC] Style cleanups 2019-12-23 17:02:36 +08:00
MCA
Object [llvm-readobj] - Remove an excessive helper for printing dynamic tags. 2019-12-24 11:55:45 +03:00
ObjectYAML [yaml2obj] - Allow using an arbitrary value for OSABI. 2019-12-23 13:29:52 +03:00
Option
Passes [Matrix] Add first set of matrix intrinsics and initial lowering pass. 2019-12-12 15:42:18 +00:00
ProfileData Revert "[Coverage] Revise format to reduce binary size" 2019-12-04 10:35:14 -08:00
Remarks
Support Revert "[Support] Extend TimeProfiler to support multiple threads" 2019-12-24 11:31:48 +00:00
TableGen [TableGen] Add bang-operators !getop and !setop. 2019-12-11 12:05:22 +00:00
Target [X86] Use 128-bit vector instructions for f32/f64->i64 conversions on 32-bit targets with avx512dq and avx512vl instructions. 2019-12-24 11:20:10 -08:00
Testing
TextAPI
ToolDrivers
Transforms [Matrix] Use fmuladd for matrix.multiply if allowed. 2019-12-23 14:49:14 +01:00
WindowsManifest
XRay
CMakeLists.txt [OpenMP][NFCI] Introduce llvm/IR/OpenMPConstants.h 2019-12-10 00:10:09 -06:00
LLVMBuild.txt [OpenMP][NFCI] Introduce llvm/IR/OpenMPConstants.h 2019-12-10 00:10:09 -06:00