forked from OSchip/llvm-project
34 lines
2.0 KiB
LLVM
34 lines
2.0 KiB
LLVM
|
; RUN: llc < %s -mtriple=s390x-linux-gnu -o - | FileCheck %s
|
||
|
|
||
|
; This test verifies that passing the "-vector" feature disables *any*
|
||
|
; use of vector instructions, even if +vector-enhancements-1 if given.
|
||
|
|
||
|
; Function Attrs: noinline nounwind optnone
|
||
|
define dso_local signext i32 @foo(fp128* %0, fp128* %1) #0 {
|
||
|
; CHECK-LABEL: @foo
|
||
|
; CHECK-NOT: vl
|
||
|
; CHECK-NOT: vst
|
||
|
; CHECK: br %r14
|
||
|
entry:
|
||
|
%arg1.addr = alloca fp128, align 8
|
||
|
%arg2.addr = alloca fp128, align 8
|
||
|
%indirect-arg-temp = alloca fp128, align 8
|
||
|
%indirect-arg-temp1 = alloca fp128, align 8
|
||
|
%arg1 = load fp128, fp128* %0, align 8
|
||
|
%arg2 = load fp128, fp128* %1, align 8
|
||
|
store fp128 %arg1, fp128* %arg1.addr, align 8
|
||
|
store fp128 %arg2, fp128* %arg2.addr, align 8
|
||
|
%2 = load fp128, fp128* %arg1.addr, align 8
|
||
|
%3 = load fp128, fp128* %arg2.addr, align 8
|
||
|
store fp128 %2, fp128* %indirect-arg-temp, align 8
|
||
|
store fp128 %3, fp128* %indirect-arg-temp1, align 8
|
||
|
%call = call signext i32 @bar(i32 signext 2, fp128* %indirect-arg-temp, fp128* %indirect-arg-temp1)
|
||
|
ret i32 %call
|
||
|
}
|
||
|
|
||
|
declare dso_local signext i32 @bar(i32 signext, fp128*, fp128*) #1
|
||
|
|
||
|
attributes #0 = { noinline nounwind optnone "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "min-legal-vector-width"="0" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="z14" "target-features"="+transactional-execution,+vector-enhancements-1,-vector" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||
|
attributes #1 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "frame-pointer"="all" "less-precise-fpmad"="false" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="z14" "target-features"="+transactional-execution,+vector-enhancements-1,-vector" "unsafe-fp-math"="false" "use-soft-float"="false" }
|
||
|
|