| OLD | NEW |
| 1 ; This tests that different floating point constants (such as 0.0 and -0.0) | 1 ; This tests that different floating point constants (such as 0.0 and -0.0) |
| 2 ; remain distinct even when they sort of look equal, and also that different | 2 ; remain distinct even when they sort of look equal, and also that different |
| 3 ; instances of the same floating point constant (such as NaN and NaN) get the | 3 ; instances of the same floating point constant (such as NaN and NaN) get the |
| 4 ; same constant pool entry even when "a==a" would suggest they are different. | 4 ; same constant pool entry even when "a==a" would suggest they are different. |
| 5 | 5 |
| 6 ; REQUIRES: allow_dump | 6 ; REQUIRES: allow_dump |
| 7 | 7 |
| 8 ; RUN: %if --need=target_MIPS32 --need=allow_dump \ | 8 ; RUN: %if --need=target_MIPS32 --need=allow_dump \ |
| 9 ; RUN: --command %p2i --filetype=asm --assemble --disassemble \ | 9 ; RUN: --command %p2i --filetype=asm --assemble --disassemble \ |
| 10 ; RUN: --target mips32 -i %s --args -O2 --skip-unimplemented \ | 10 ; RUN: --target mips32 -i %s --args -O2 \ |
| 11 ; RUN: | %if --need=target_MIPS32 --need=allow_dump \ | 11 ; RUN: | %if --need=target_MIPS32 --need=allow_dump \ |
| 12 ; RUN: --command FileCheck --check-prefix MIPS32 %s | 12 ; RUN: --command FileCheck --check-prefix MIPS32 %s |
| 13 | 13 |
| 14 define internal void @consume_float(float %f) { | 14 define internal void @consume_float(float %f) { |
| 15 ret void | 15 ret void |
| 16 } | 16 } |
| 17 | 17 |
| 18 define internal void @consume_double(double %d) { | 18 define internal void @consume_double(double %d) { |
| 19 ret void | 19 ret void |
| 20 } | 20 } |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 ; NANS3-NOT: double nan | 104 ; NANS3-NOT: double nan |
| 105 ; | 105 ; |
| 106 ; RUN: %p2i -i %s --filetype=asm --llvm-source \ | 106 ; RUN: %p2i -i %s --filetype=asm --llvm-source \ |
| 107 ; RUN: | FileCheck --check-prefix=NANS4 %s | 107 ; RUN: | FileCheck --check-prefix=NANS4 %s |
| 108 ; NANS4: double -nan | 108 ; NANS4: double -nan |
| 109 ; NANS4-NOT: double -nan | 109 ; NANS4-NOT: double -nan |
| 110 | 110 |
| 111 ; MIPS32 constant pool | 111 ; MIPS32 constant pool |
| 112 ; RUN: %if --need=target_MIPS32 --command %p2i \ | 112 ; RUN: %if --need=target_MIPS32 --command %p2i \ |
| 113 ; RUN: --target mips32 -i %s --filetype=asm --llvm-source \ | 113 ; RUN: --target mips32 -i %s --filetype=asm --llvm-source \ |
| 114 ; RUN: --args -O2 --skip-unimplemented \ | 114 ; RUN: --args -O2 \ |
| 115 ; RUN: | %if --need=target_MIPS32 --command FileCheck \ | 115 ; RUN: | %if --need=target_MIPS32 --command FileCheck \ |
| 116 ; RUN: --check-prefix=MIPS32CP %s | 116 ; RUN: --check-prefix=MIPS32CP %s |
| 117 ; MIPS32CP-LABEL: .L$float$7fc00000: | 117 ; MIPS32CP-LABEL: .L$float$7fc00000: |
| 118 ; MIPS32CP: .word 0x7fc00000 /* f32 nan */ | 118 ; MIPS32CP: .word 0x7fc00000 /* f32 nan */ |
| 119 ; MIPS32CP-LABEL: .L$float$80000000 | 119 ; MIPS32CP-LABEL: .L$float$80000000 |
| 120 ; MIPS32CP: .word 0x80000000 /* f32 -0.000000e+00 */ | 120 ; MIPS32CP: .word 0x80000000 /* f32 -0.000000e+00 */ |
| 121 ; MIPS32CP-LABEL: .L$float$ffc00000 | 121 ; MIPS32CP-LABEL: .L$float$ffc00000 |
| 122 ; MIPS32CP: .word 0xffc00000 /* f32 -nan */ | 122 ; MIPS32CP: .word 0xffc00000 /* f32 -nan */ |
| 123 ; MIPS32CP-LABEL: .L$double$7ff8000000000000 | 123 ; MIPS32CP-LABEL: .L$double$7ff8000000000000 |
| 124 ; MIPS32CP: .quad 0x7ff8000000000000 /* f64 nan */ | 124 ; MIPS32CP: .quad 0x7ff8000000000000 /* f64 nan */ |
| 125 ; MIPS32CP-LABEL: .L$double$8000000000000000 | 125 ; MIPS32CP-LABEL: .L$double$8000000000000000 |
| 126 ; MIPS32CP: .quad 0x8000000000000000 /* f64 -0.000000e+00 */ | 126 ; MIPS32CP: .quad 0x8000000000000000 /* f64 -0.000000e+00 */ |
| 127 ; MIPS32CP-LABEL: .L$double$fff8000000000000 | 127 ; MIPS32CP-LABEL: .L$double$fff8000000000000 |
| 128 ; MIPS32CP: .quad 0xfff8000000000000 /* f64 -nan */ | 128 ; MIPS32CP: .quad 0xfff8000000000000 /* f64 -nan */ |
| OLD | NEW |