1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 14:02:52 +02:00
llvm-mirror/lib/Transforms/Utils
Chris Lattner 6e7b76ce94 Do not sort by the address of LLVM ConstantInt* objects. This produces
nondeterministic results that depend on where these objects land in memory.
Instead, sort by the value of the constant, which is stable.

Before this patch, the -simplifycfg pass run from two different compilers
could cause different code to be generated, though it was semantically the
same:

@@ -12258,8 +12258,8 @@
        %s_addr.1 = phi sbyte* [ %s, %entry ], [ %inc.0, %no_exit ]             ; <sbyte*> [#uses=5]
        %tmp.1 = load sbyte* %s_addr.1          ; <sbyte> [#uses=1]
        switch sbyte %tmp.1, label %no_exit [
-                sbyte 0, label %loopexit
                 sbyte 46, label %loopexit
+                sbyte 0, label %loopexit
        ]

We need to stomp all of this stuff out.

llvm-svn: 14243
2004-06-19 07:02:14 +00:00
..
BasicBlockUtils.cpp Finegrainify namespacification 2004-01-09 06:12:26 +00:00
BreakCriticalEdges.cpp Fix bug: test/Regression/Transforms/LowerInvoke/2004-02-29-PHICrash.llx 2004-02-29 22:24:41 +00:00
CloneFunction.cpp Move RemapInstruction() to ValueMapper, so that it can be shared with 2004-05-19 09:08:12 +00:00
CloneModule.cpp Convert to SymbolTable's new iteration interface. 2004-05-25 08:53:40 +00:00
CloneTrace.cpp Add CloneTraceInto(), which is based on (and has mostly the same 2004-05-19 09:08:14 +00:00
CodeExtractor.cpp Do not pass a null pointer if this instruction is not prepended or 2004-05-26 22:50:28 +00:00
DemoteRegToStack.cpp Fix PR310 and TailDup/2004-04-01-DemoteRegToStack.llx 2004-04-01 20:28:45 +00:00
InlineFunction.cpp Fix Inline/2004-04-15-InlineDeletesCall.ll 2004-04-16 05:17:59 +00:00
Linker.cpp Rename Type::PrimitiveID to TypeId and ::getPrimitiveID() to ::getTypeID() 2004-06-17 18:19:28 +00:00
Local.cpp I love the smell of a freshly broken PowerPC build in the morning. 2004-06-17 22:27:04 +00:00
Makefile Added LLVM copyright notice to Makefiles. 2003-10-20 22:26:57 +00:00
PromoteMemoryToRegister.cpp Implement ScalarRepl/select_promote.ll 2004-04-08 19:59:34 +00:00
SimplifyCFG.cpp Do not sort by the address of LLVM ConstantInt* objects. This produces 2004-06-19 07:02:14 +00:00
UnifyFunctionExitNodes.cpp Use one destination constructor for the unconditional branch. 2004-05-26 21:38:14 +00:00
ValueMapper.cpp Move RemapInstruction() to ValueMapper, so that it can be shared with 2004-05-19 09:08:12 +00:00
ValueMapper.h Move RemapInstruction() to ValueMapper, so that it can be shared with 2004-05-19 09:08:12 +00:00