blob: 5de9700fc0648b6a7bae28342b46eab81b16a846 [file] [log] [blame]
Tim Northover3a51aab2013-01-11 10:36:13 +00001; RUN: llc -mtriple=x86_64-none-linux < %s | FileCheck %s
2
3; Check that all current floating-point types are correctly emitted to assembly
4; on a little-endian target.
5
6@var128 = global fp128 0xL00000000000000008000000000000000, align 16
7@varppc128 = global ppc_fp128 0xM80000000000000000000000000000000, align 16
8@var80 = global x86_fp80 0xK80000000000000000000, align 16
9@var64 = global double -0.0, align 8
10@var32 = global float -0.0, align 4
11@var16 = global half -0.0, align 2
12
13; CHECK: var128:
14; CHECK-NEXT: .quad 0 # fp128 -0
15; CHECK-NEXT: .quad -9223372036854775808
16; CHECK-NEXT: .size
17
18; CHECK: varppc128:
Ulrich Weigandf236bb12014-07-03 15:06:47 +000019; For ppc_fp128, the high double always comes first.
20; CHECK-NEXT: .quad -9223372036854775808 # ppc_fp128 -0
21; CHECK-NEXT: .quad 0
Tim Northover3a51aab2013-01-11 10:36:13 +000022; CHECK-NEXT: .size
23
24; CHECK: var80:
25; CHECK-NEXT: .quad 0 # x86_fp80 -0
26; CHECK-NEXT: .short 32768
27; CHECK-NEXT: .zero 6
28; CHECK-NEXT: .size
29
30; CHECK: var64:
31; CHECK-NEXT: .quad -9223372036854775808 # double -0
32; CHECK-NEXT: .size
33
34; CHECK: var32:
35; CHECK-NEXT: .long 2147483648 # float -0
36; CHECK-NEXT: .size
37
38; CHECK: var16:
39; CHECK-NEXT: .short 32768 # half -0
40; CHECK-NEXT: .size
41