1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Go to file
Evan Cheng 40adfc21f6 Teach dag combine to match halfword byteswap patterns.
1. (((x) & 0xFF00) >> 8) | (((x) & 0x00FF) << 8)
   => (bswap x) >> 16
2. ((x&0xff)<<8)|((x&0xff00)>>8)|((x&0xff000000)>>8)|((x&0x00ff0000)<<8))
   => (rotl (bswap x) 16)

This allows us to eliminate most of the def : Pat patterns for ARM rev16
revsh instructions. It catches many more cases for ARM and x86.

rdar://9609108

llvm-svn: 133503
2011-06-21 06:01:08 +00:00
autoconf build/configure: Add support for --with-extra-ld-options flag (to provide extra 2011-06-16 22:30:38 +00:00
bindings Fix compiling the ocaml kaleidoscope tutorials 2011-02-09 18:32:02 +00:00
cmake Added LLVM_BUILD_MODE to cmake so that lit supports tests with REQUIRES: {buildmode}. 2011-06-16 22:19:20 +00:00
docs Document nonlazybind. 2011-06-16 16:03:13 +00:00
examples Modify comment. 2011-06-09 20:11:46 +00:00
include Revert r133435 and r133449 to appease buildbots. 2011-06-21 02:09:03 +00:00
lib Teach dag combine to match halfword byteswap patterns. 2011-06-21 06:01:08 +00:00
projects Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
runtime Remove the LTO stuff from the profile_rt library's Makefile. 2011-06-15 04:56:13 +00:00
test Teach dag combine to match halfword byteswap patterns. 2011-06-21 06:01:08 +00:00
tools Revamp the "ConstantStruct::get" methods. Previously, these were scattered 2011-06-20 04:01:31 +00:00
unittests Revamp the "ConstantStruct::get" methods. Previously, these were scattered 2011-06-20 04:01:31 +00:00
utils Skip fields that don't exist in the Register class. 2011-06-20 20:56:05 +00:00
website
.gitignore Ignore Vim swap files 2011-05-31 21:54:28 +00:00
build-for-llvm-top.sh Patch to build llvm with srcdir != objdir from 2009-01-23 08:42:38 +00:00
CMakeLists.txt Rename profile_rt.so to libprofile_rt.so under configure+make (it already was 2011-04-29 02:12:06 +00:00
configure Regenerate configure. 2011-06-16 22:30:41 +00:00
CREDITS.TXT Another git svn dcommit test. This time let's hope it doesn't kill my repo. 2010-12-10 14:45:10 +00:00
LICENSE.TXT Happy new year. 2011-06-12 15:26:54 +00:00
llvm.spec.in
Makefile Install libprofile_rt.dylib where it's more available for gcov support. 2011-06-10 21:47:14 +00:00
Makefile.common Removed trailing whitespace from Makefiles. 2009-01-09 16:44:42 +00:00
Makefile.config.in build/configure: Add support for --with-extra-ld-options flag (to provide extra 2011-06-16 22:30:38 +00:00
Makefile.rules Don't force remove config.cache on reconfiguration. 2011-06-17 11:08:09 +00:00
ModuleInfo.txt Remove trailing space. This is just an excuse to poke the 2010-10-05 20:32:15 +00:00
README.txt reverting test commit 2011-05-12 17:38:08 +00:00

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.