llvm-6502/test
Benjamin Kramer 1c10b8de46 BuildUDIV: If the divisor is even we can simplify the fixup of the multiplied value by introducing an early shift.
This allows us to compile "unsigned foo(unsigned x) { return x/28; }" into
	shrl	$2, %edi
	imulq	$613566757, %rdi, %rax
	shrq	$32, %rax
	ret

instead of
	movl    %edi, %eax
	imulq   $613566757, %rax, %rcx
	shrq    $32, %rcx
	subl    %ecx, %eax
	shrl    %eax
	addl    %ecx, %eax
	shrl    $4, %eax

on x86_64

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127829 91177308-0d34-0410-b5e6-96231b3b80d8
2011-03-17 20:39:14 +00:00
..
Analysis Propagate SCEV no-wrap flags whenever possible. 2011-03-15 00:37:00 +00:00
Archive
Assembler Reapply: Add type output to llvm-dis annotations. Patch by Yuri! 2011-03-17 19:50:04 +00:00
Bindings/Ocaml
Bitcode
BugPoint
CodeGen BuildUDIV: If the divisor is even we can simplify the fixup of the multiplied value by introducing an early shift. 2011-03-17 20:39:14 +00:00
DebugInfo
ExecutionEngine
Feature
FrontendAda Testcase for dragonegg commit 124128. 2011-01-24 18:04:33 +00:00
FrontendC
FrontendC++
FrontendFortran
FrontendObjC
FrontendObjC++
Integer
lib
Linker
LLVMC
MC MC/Mach-O: Fix regression introduced in r126127, this assignment shouldn't have 2011-03-17 16:25:24 +00:00
Object
Other
Scripts
TableGen
Transforms Only convert allocas to scalars if it is profitable. The profitability metric I 2011-03-16 00:13:44 +00:00
Unit
Verifier
CMakeLists.txt
lit.cfg
lit.site.cfg.in
Makefile
Makefile.tests
site.exp.in
TestRunner.sh