xref: /llvm-project/llvm/test/CodeGen/AArch64/win_cst_pool.ll (revision a8ebd85e463b086c0e684c9e7867bbf42555ad27)
1; RUN: llc < %s -mtriple=aarch64-win32-msvc | FileCheck %s
2; RUN: llc < %s -mtriple=aarch64-win32-gnu | FileCheck -check-prefix=MINGW %s
3
4define double @double() {
5  ret double 0x2000000000800001
6}
7; CHECK:              .globl "__real@2000000000800001"
8; CHECK-NEXT:         .section        .rdata,"dr",discard,"__real@2000000000800001"
9; CHECK-NEXT:         .p2align  3
10; CHECK-NEXT: "__real@2000000000800001":
11; CHECK-NEXT:         .xword   0x2000000000800001
12; CHECK:      double:
13; CHECK:               adrp    x8, "__real@2000000000800001"
14; CHECK-NEXT:          ldr     d0, [x8, :lo12:"__real@2000000000800001"]
15; CHECK-NEXT:          ret
16
17; MINGW:              .section        .rdata,"dr"
18; MINGW-NEXT:         .p2align  3
19; MINGW-NEXT: [[LABEL:\.LC.*]]:
20; MINGW-NEXT:         .xword  0x2000000000800001
21; MINGW:      double:
22; MINGW:               adrp    x8, [[LABEL]]
23; MINGW-NEXT:          ldr     d0, [x8, :lo12:[[LABEL]]]
24; MINGW-NEXT:          ret
25