Go to file
Craig Topper d1c61861dd [X86] Don't emit MULX by default with BMI2
MULX has somewhat improved register allocation constraints compared to the legacy MUL instruction. Both output registers are encoded instead of fixed to EAX/EDX, but EDX is used as input. It also doesn't touch flags. Unfortunately, the encoding is longer.

Prefering it whenever BMI2 is enabled is probably not optimal. Choosing it should somehow be a function of register allocation constraints like converting adds to three address. gcc and icc definitely don't pick MULX by default. Not sure what if any rules they have for using it.

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

llvm-svn: 348975
2018-12-12 21:21:31 +00:00
clang Teach __builtin_unpredictable to work through implicit casts. 2018-12-12 20:30:53 +00:00
clang-tools-extra Add explicit dependency on clangSerialization after rC348911 2018-12-12 08:25:16 +00:00
compiler-rt [Sanitizer] Expand FSEEK interception to FreeBSD 2018-12-11 19:08:40 +00:00
debuginfo-tests Set config.lit_tools_dir, which is needed by lit.llvm.initialize. 2018-11-06 21:54:27 +00:00
libclc travis: Add cmake build 2018-11-27 16:07:21 +00:00
libcxx [test] [depr.c.headers] XFAIL uchar.h on NetBSD 2018-12-12 20:51:46 +00:00
libcxxabi [libcxx] Remove bad_array_length 2018-11-29 19:44:57 +00:00
libunwind [cmake] Rename append_if to avoid collision with LLVM 2018-12-11 15:30:04 +00:00
lld Update for an llvm-dwarfdump change in output 2018-12-12 18:46:43 +00:00
lldb NFC: fix compiler warning about code never being executed when compiling on non windows platform. 2018-12-12 18:14:27 +00:00
llgo Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
llvm [X86] Don't emit MULX by default with BMI2 2018-12-12 21:21:31 +00:00
openmp [runtime] Disable KMP_HAVE_QUAD on NetBSD gcc 2018-12-11 19:02:14 +00:00
parallel-libs Update copyright year to 2018. 2018-06-18 12:22:17 +00:00
polly [CMake] Fix generation of exported targets in build directory 2018-11-06 15:18:17 +00:00
README.md Update the project name in README.md 2018-10-19 00:03:01 +00:00

README.md

The LLVM Compiler Infrastructure

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.