llvm-6502/test
Chris Lattner bef37376be Generalize the previous xform to handle cases where exactly
two elements match or don't match with two comparisons.  For
example, the testcase compiles into:

define i1 @test5(i32 %X) {
  %1 = icmp eq i32 %X, 2                          ; <i1> [#uses=1]
  %2 = icmp eq i32 %X, 7                          ; <i1> [#uses=1]
  %R = or i1 %1, %2                               ; <i1> [#uses=1]
  ret i1 %R
}

This generalizes the previous xforms when the array is larger than
64 elements (and this case matches) and generates better code for
cases where it overlaps with the magic bitshift case.

This generalizes more cases than you might expect.  For example,
400.perlbmk has:

@PL_utf8skip = constant [256 x i8] c"\01\01\01\...
%15 = icmp ult i8 %7, 7

403.gcc has:
@rid_to_yy = internal constant [114 x i16] [i16 259, i16 260, ...
%18 = icmp eq i16 %16, 295 

and xalancbmk has a bunch of examples, such as 
_ZN11xercesc_2_5L15gCombiningCharsE and _ZN11xercesc_2_5L10gBaseCharsE.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92417 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-02 09:35:17 +00:00
..
Analysis gvn is optimizing this better now. 2009-12-06 04:16:05 +00:00
Archive
Assembler add some basic named MD tests. 2009-12-31 03:00:49 +00:00
Bindings/Ocaml
Bitcode
BugPoint
CodeGen allow this to work on linux hosts. 2010-01-02 00:22:15 +00:00
DebugInfo XFAIL on ppc-darwin. 2009-12-16 02:11:38 +00:00
ExecutionEngine
Feature
FrontendAda
FrontendC Test case for 90787. 2009-12-07 19:42:22 +00:00
FrontendC++ Testcase for llvm-gcc checkin 92108. 2009-12-24 01:10:43 +00:00
FrontendFortran
FrontendObjC Remove now-redundant llvm-as invocations. 2009-12-05 00:02:37 +00:00
FrontendObjC++
Integer
lib
Linker
LLVMC Remove an XFAIL. 2009-12-23 20:13:44 +00:00
MC specify a triple to use, fixing the test on non-x86-64 hosts. 2009-12-22 07:01:12 +00:00
Other
Scripts
TableGen Fix a bug in !subst where TableGen would go and resubstitute text it had 2009-12-21 21:21:34 +00:00
Transforms Generalize the previous xform to handle cases where exactly 2010-01-02 09:35:17 +00:00
Unit CMake/lit: Add llvm_{unit_,}site_config parameters, and always pass them when running tests from the project files. 2009-12-08 19:47:36 +00:00
Verifier
CMakeLists.txt CMake/lit: Add llvm_{unit_,}site_config parameters, and always pass them when running tests from the project files. 2009-12-08 19:47:36 +00:00
lit.cfg CMake/lit: Add llvm_{unit_,}site_config parameters, and always pass them when running tests from the project files. 2009-12-08 19:47:36 +00:00
lit.site.cfg.in
Makefile Revert the test from r88984. It relies on being able to mmap 16GB of 2009-11-16 23:32:30 +00:00
Makefile.tests
site.exp.in
TestRunner.sh