aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/CodeGen/AArch64/fast-isel-const-float.ll
blob: 4de2c934a672e4ee758b6cb4154080f7eb9a3d4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -mtriple=aarch64-none-linux-gnu -global-isel -verify-machineinstrs < %s | FileCheck %s --check-prefix=GISEL
; RUN: llc -mtriple=aarch64-none-linux-gnu -fast-isel -verify-machineinstrs < %s | FileCheck %s --check-prefix=FISEL

; float foo(void) { return float(2147483648); }
define float @select_fp_const() {
; CHECK-LABEL: select_opt4
; CHECK: movi v0.2s, #79, lsl #24
; GISEL-LABEL: select_fp_const:
; GISEL:       // %bb.0: // %entry
; GISEL-NEXT:    movi v0.2s, #79, lsl #24
; GISEL-NEXT:    ret
;
; FISEL-LABEL: select_fp_const:
; FISEL:       // %bb.0: // %entry
; FISEL-NEXT:    adrp x8, .LCPI0_0
; FISEL-NEXT:    ldr s0, [x8, :lo12:.LCPI0_0]
; FISEL-NEXT:    ret
entry:
  ret float 0x41E0000000000000
}