hanchenye-llvm-project/llvm
Evan Cheng 25f9364cbd Optimize some vfp comparisons to integer ones. This patch implements the simplest case when the following conditions are met:
1. The arguments are f32.
2. The arguments are loads and they have no uses other than the comparison.
3. The comparison code is EQ or NE.

e.g.
        vldr.32 s0, [r1]
        vldr.32 s1, [r0]
        vcmpe.f32       s1, s0
        vmrs    apsr_nzcv, fpscr
	beq     LBB0_2
=>
        ldr     r1, [r1]
        ldr     r0, [r0]
        cmp     r0, r1
        beq     LBB0_2

More complicated cases will be implemented in subsequent patches.

llvm-svn: 107852
2010-07-08 02:08:50 +00:00
..
autoconf Pull in the libCrashReporterClient.a information with a warning comment. 2010-06-28 18:25:51 +00:00
bindings Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
cmake
docs Update the docs for debugging JITed code with GDB. 2010-07-07 20:16:45 +00:00
examples
include Revert 107840 107839 107813 107804 107800 107797 107791. 2010-07-08 01:00:56 +00:00
lib Optimize some vfp comparisons to integer ones. This patch implements the simplest case when the following conditions are met: 2010-07-08 02:08:50 +00:00
projects
runtime
test Optimize some vfp comparisons to integer ones. This patch implements the simplest case when the following conditions are met: 2010-07-08 02:08:50 +00:00
tools Implement the "linker_private_weak" linkage type. This will be used for 2010-07-01 21:55:59 +00:00
unittests
utils Changes to ARM tail calls, mostly cosmetic. 2010-07-08 01:18:23 +00:00
website
CMakeLists.txt Fix LLVM CMake PACKAGE_VERSION variable. 2010-06-25 16:29:14 +00:00
CREDITS.TXT
LICENSE.TXT
Makefile Issue the warning about being slow whenever optimization is disabled, 2010-07-07 16:48:16 +00:00
Makefile.common
Makefile.config.in typo in comment, regeneration not necessary 2010-07-07 13:58:46 +00:00
Makefile.rules Rename "Release" builds as "Release+Asserts"; rename "Release-Asserts" 2010-07-07 07:48:00 +00:00
ModuleInfo.txt
README.txt
build-for-llvm-top.sh
configure Pull in the libCrashReporterClient.a information with a warning comment. 2010-06-28 18:25:51 +00:00
llvm.spec.in

README.txt

Low Level Virtual Machine (LLVM)
================================

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

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.

If you're writing a package for LLVM, see docs/Packaging.html for our
suggestions.