| Index: test/NaCl/Bitcode/null.ll
|
| diff --git a/test/NaCl/Bitcode/null.ll b/test/NaCl/Bitcode/null.ll
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..866c2017bfad1dc06e3f2f9a9ad6190c4da9db8e
|
| --- /dev/null
|
| +++ b/test/NaCl/Bitcode/null.ll
|
| @@ -0,0 +1,82 @@
|
| +; Test that we no longer generate NULL for numeric constants.
|
| +
|
| +; RUN: llvm-as < %s | pnacl-freeze \
|
| +; RUN: | pnacl-bcanalyzer -dump-records \
|
| +; RUN: | FileCheck %s -check-prefix=PF
|
| +
|
| +; RUN: llvm-as < %s | pnacl-freeze | pnacl-thaw \
|
| +; RUN: | llvm-dis - | FileCheck %s -check-prefix=TD
|
| +
|
| +; ------------------------------------------------------
|
| +
|
| +define void @TestIntegers() {
|
| + %1 = and i1 true, false
|
| + %2 = add i8 1, 0
|
| + %3 = add i16 1, 0
|
| + %4 = add i32 1, 0
|
| + %5 = add i64 1, 0
|
| + ret void
|
| +}
|
| +
|
| +; TD: define void @TestIntegers() {
|
| +; TD-NEXT: %1 = and i1 true, false
|
| +; TD-NEXT: %2 = add i8 1, 0
|
| +; TD-NEXT: %3 = add i16 1, 0
|
| +; TD-NEXT: %4 = add i32 1, 0
|
| +; TD-NEXT: %5 = add i64 1, 0
|
| +; TD-NEXT: ret void
|
| +; TD-NEXT: }
|
| +
|
| +; PF: <FUNCTION_BLOCK>
|
| +; PF-NEXT: <DECLAREBLOCKS op0=1/>
|
| +; PF-NEXT: <CONSTANTS_BLOCK>
|
| +; PF-NEXT: <SETTYPE op0=1/>
|
| +; PF-NEXT: <INTEGER op0=3/>
|
| +; PF-NEXT: <INTEGER op0=0/>
|
| +; PF-NEXT: <SETTYPE op0=2/>
|
| +; PF-NEXT: <INTEGER op0=2/>
|
| +; PF-NEXT: <INTEGER op0=0/>
|
| +; PF-NEXT: <SETTYPE op0=3/>
|
| +; PF-NEXT: <INTEGER op0=2/>
|
| +; PF-NEXT: <INTEGER op0=0/>
|
| +; PF-NEXT: <SETTYPE op0=4/>
|
| +; PF-NEXT: <INTEGER op0=2/>
|
| +; PF-NEXT: <INTEGER op0=0/>
|
| +; PF-NEXT: <SETTYPE op0=5/>
|
| +; PF-NEXT: <INTEGER op0=2/>
|
| +; PF-NEXT: <INTEGER op0=0/>
|
| +; PF-NEXT: </CONSTANTS_BLOCK>
|
| +; PF-NEXT: <INST_BINOP op0=10 op1=9 op2=10/>
|
| +; PF-NEXT: <INST_BINOP op0=9 op1=8 op2=0/>
|
| +; PF-NEXT: <INST_BINOP op0=8 op1=7 op2=0/>
|
| +; PF-NEXT: <INST_BINOP op0=7 op1=6 op2=0/>
|
| +; PF-NEXT: <INST_BINOP op0=6 op1=5 op2=0/>
|
| +; PF-NEXT: <INST_RET/>
|
| +; PF-NEXT: </FUNCTION_BLOCK>
|
| +
|
| +define void @TestFloats() {
|
| + %1 = fadd float 1.0, 0.0
|
| + %2 = fadd double 1.0, 0.0
|
| + ret void
|
| +}
|
| +
|
| +; TD: define void @TestFloats() {
|
| +; TD-NEXT: %1 = fadd float 1.000000e+00, 0.000000e+00
|
| +; TD-NEXT: %2 = fadd double 1.000000e+00, 0.000000e+00
|
| +; TD-NEXT: ret void
|
| +; TD-NEXT: }
|
| +
|
| +; PF: <FUNCTION_BLOCK>
|
| +; PF-NEXT: <DECLAREBLOCKS op0=1/>
|
| +; PF-NEXT: <CONSTANTS_BLOCK>
|
| +; PF-NEXT: <SETTYPE op0=6/>
|
| +; PF-NEXT: <FLOAT op0=1065353216/>
|
| +; PF-NEXT: <FLOAT op0=0/>
|
| +; PF-NEXT: <SETTYPE op0=7/>
|
| +; PF-NEXT: <FLOAT op0=4607182418800017408/>
|
| +; PF-NEXT: <FLOAT op0=0/>
|
| +; PF-NEXT: </CONSTANTS_BLOCK>
|
| +; PF-NEXT: <INST_BINOP op0=4 op1=3 op2=0/>
|
| +; PF-NEXT: <INST_BINOP op0=3 op1=2 op2=0/>
|
| +; PF-NEXT: <INST_RET/>
|
| +; PF-NEXT: </FUNCTION_BLOCK>
|
|
|