2013-02-01 11:40:47 +00:00
|
|
|
; RUN: llc -mtriple=aarch64-none-linux-gnu -verify-machineinstrs < %s | FileCheck %s
|
2014-04-15 14:00:29 +00:00
|
|
|
; RUN: llc -mtriple=arm64-linux-gnu -verify-machineinstrs -o - %s | FileCheck %s
|
2013-01-31 12:12:40 +00:00
|
|
|
declare void @bar(i8*, i8*, i32*)
|
|
|
|
|
|
|
|
; SelectionDAG used to try to fold some fp128 operations using the ppc128 type,
|
|
|
|
; which is not supported.
|
|
|
|
|
|
|
|
define fp128 @test_folding() {
|
2013-07-13 20:38:47 +00:00
|
|
|
; CHECK-LABEL: test_folding:
|
2013-01-31 12:12:40 +00:00
|
|
|
%l = alloca i32
|
|
|
|
store i32 42, i32* %l
|
|
|
|
%val = load i32* %l
|
|
|
|
%fpval = sitofp i32 %val to fp128
|
|
|
|
; If the value is loaded from a constant pool into an fp128, it's been folded
|
|
|
|
; successfully.
|
2014-04-15 14:00:29 +00:00
|
|
|
; CHECK: ldr {{q[0-9]+}}, [{{x[0-9]+}}, {{#?}}:lo12:.LCPI
|
2013-01-31 12:12:40 +00:00
|
|
|
ret fp128 %fpval
|
2013-07-13 20:38:47 +00:00
|
|
|
}
|