1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Go to file
Chris Lattner 647c629ee4 generalize the previous transformation to handle indexing into
arrays of structs and other arrays, so long as all the subsequent
indexes are constants.  This triggers frequently for stuff like:

@divisions = internal constant [29 x [2 x i32]] [[2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 1], [2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 1], [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 2], [2 x i32] zeroinitializer, [2 x i32] zeroinitializer, [2 x i32] zeroinitializer, [2 x i32] [i32 0, i32 2], [2 x i32] [i32 0, i32 1], [2 x i32] zeroinitializer, [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 0], [2 x i32] [i32 1, i32 1], [2 x i32] [i32 1, i32 2], [2 x i32] [i32 1, i32 2]], align 32 ; <[29 x [2 x i32]]*> [#uses=50]

	  %623 = getelementptr inbounds [29 x [2 x i32]]* @divisions, i64 0, i64 %619, i64 0 ; <i32*> [#uses=1]
	   %684 = icmp eq i32 %683, 999 

also for the "my_defs" table in 'gs', etc.

llvm-svn: 92444
2010-01-03 03:03:27 +00:00
autoconf Fix typos. Thanks to John Tytgat for noticing it! 2009-12-07 00:27:35 +00:00
bindings Fix another parallel make race condition. 2009-12-18 20:12:14 +00:00
cmake CMake: Update lib deps. 2009-12-19 21:27:30 +00:00
docs Regenerate. 2009-12-23 12:49:51 +00:00
examples fix PR5649 by making fib use the JIT instead of the interpreter, patch by Perry Lorier! 2009-12-01 01:56:27 +00:00
include remove the random sampling framework, which is not maintained anymore. 2010-01-02 20:07:03 +00:00
lib generalize the previous transformation to handle indexing into 2010-01-03 03:03:27 +00:00
projects Move DataTypes.h to include/llvm/System, update all users. This breaks the last 2009-10-26 01:35:46 +00:00
runtime remove the random sampling framework, which is not maintained anymore. 2010-01-02 20:07:03 +00:00
test generalize the previous transformation to handle indexing into 2010-01-03 03:03:27 +00:00
tools Forward -O0 to llvm-gcc. 2010-01-02 08:27:23 +00:00
unittests Silence compiler warning. 2009-12-31 16:27:13 +00:00
utils Typo. 2010-01-01 04:40:54 +00:00
website
Xcode Remove the IA-64 backend. 2009-07-24 00:30:09 +00:00
build-for-llvm-top.sh
CMakeLists.txt Don't default warnings to ON on MSVC, the spew is enough to triple the build time. :/ 2009-12-01 19:11:36 +00:00
configure Fix typos. Thanks to John Tytgat for noticing it! 2009-12-07 00:27:35 +00:00
CREDITS.TXT Add myself to the blame list. 2009-08-20 15:20:15 +00:00
LICENSE.TXT Add regular expression matching support, based on OpenBSD regexec()/regcomp() 2009-08-30 08:24:09 +00:00
llvm.spec.in
Makefile Update install-clang target for clang-cc removal. 2009-12-12 21:17:54 +00:00
Makefile.common
Makefile.config.in Fix typos. Thanks to John Tytgat for noticing it! 2009-12-07 00:27:35 +00:00
Makefile.rules Add the rest of the build system logic for optional target disassemblers 2009-11-25 04:46:58 +00:00
ModuleInfo.txt
README.txt First test commit 2009-10-05 22:29:11 +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.