mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-18 13:34:04 +00:00
47 lines
883 B
LLVM
47 lines
883 B
LLVM
|
; RUN: llc -mcpu=pwr7 -mattr=+vsx < %s | FileCheck %s
|
||
|
target datalayout = "E-m:e-i64:64-n32:64"
|
||
|
target triple = "powerpc64-unknown-linux-gnu"
|
||
|
|
||
|
define double @test1(double %a, double %b) {
|
||
|
entry:
|
||
|
%v = fmul double %a, %b
|
||
|
ret double %v
|
||
|
|
||
|
; CHECK-LABEL: @test1
|
||
|
; CHECK: xsmuldp 1, 1, 2
|
||
|
; CHECK: blr
|
||
|
}
|
||
|
|
||
|
define double @test2(double %a, double %b) {
|
||
|
entry:
|
||
|
%v = fdiv double %a, %b
|
||
|
ret double %v
|
||
|
|
||
|
; CHECK-LABEL: @test2
|
||
|
; CHECK: xsdivdp 1, 1, 2
|
||
|
; CHECK: blr
|
||
|
}
|
||
|
|
||
|
define double @test3(double %a, double %b) {
|
||
|
entry:
|
||
|
%v = fadd double %a, %b
|
||
|
ret double %v
|
||
|
|
||
|
; CHECK-LABEL: @test3
|
||
|
; CHECK: xsadddp 1, 1, 2
|
||
|
; CHECK: blr
|
||
|
}
|
||
|
|
||
|
define <2 x double> @test4(<2 x double> %a, <2 x double> %b) {
|
||
|
entry:
|
||
|
%v = fadd <2 x double> %a, %b
|
||
|
ret <2 x double> %v
|
||
|
|
||
|
; FIXME: Check that the ABI for the return value is correct here!
|
||
|
|
||
|
; CHECK-LABEL: @test4
|
||
|
; CHECK: xvadddp {{[0-9]+}}, 34, 35
|
||
|
; CHECK: blr
|
||
|
}
|
||
|
|