llvm-6502/lib
Evan Cheng 92e3916c3b Add intrinsics @llvm.arm.neon.vmulls and @llvm.arm.neon.vmullu.* back. Frontends
was lowering them to sext / uxt + mul instructions. Unfortunately the
optimization passes may hoist the extensions out of the loop and separate them.
When that happens, the long multiplication instructions can be broken into
several scalar instructions, causing significant performance issue.

Note the vmla and vmls intrinsics are not added back. Frontend will codegen them
as intrinsics vmull* + add / sub. Also note the isel optimizations for catching
mul + sext / zext are not changed either.

First part of rdar://8832507, rdar://9203134


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128502 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-29 23:06:19 +00:00
..
Analysis Constant folding support for calls to umul.with.overflow(), basically identical to the smul.with.overflow() code. 2011-03-27 14:26:13 +00:00
Archive Revert PathV2 changes, as sys::fs::unique_file is not finished yet. 2011-03-01 19:50:55 +00:00
AsmParser Use X86_thiscall calling convention for Win64 as well. 2011-03-03 07:49:07 +00:00
Bitcode Move library stuff out of the toplevel CMakeLists.txt file. 2011-02-18 22:06:14 +00:00
CodeGen Recompute register class and hint for registers created during spilling. 2011-03-29 21:20:19 +00:00
CompilerDriver Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
ExecutionEngine Instantiate a JITMemoryManager for MCJIT Dyld 2011-03-29 21:03:05 +00:00
Linker We need to copy over the unnamed_addr attribute. 2011-03-29 23:05:41 +00:00
MC Added support symbolic floating point constants in the MC assembler for Infinity 2011-03-29 21:11:52 +00:00
Object Object: Fix type punned pointer issues by making DataRefImpl a union and using intptr_t. 2011-01-21 02:27:02 +00:00
Support Constant folding support for calls to umul.with.overflow(), basically identical to the smul.with.overflow() code. 2011-03-27 14:26:13 +00:00
Target Add intrinsics @llvm.arm.neon.vmulls and @llvm.arm.neon.vmullu.* back. Frontends 2011-03-29 23:06:19 +00:00
Transforms InstCombine: Add a few missing combines for ANDs and ORs of sign bit tests. 2011-03-29 22:06:41 +00:00
VMCore Add intrinsics @llvm.arm.neon.vmulls and @llvm.arm.neon.vmullu.* back. Frontends 2011-03-29 23:06:19 +00:00
CMakeLists.txt Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
Makefile Add LLVMObject Library. 2010-11-15 03:21:41 +00:00