mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-22 07:32:48 +00:00
7b837d8c75
This adds a second implementation of the AArch64 architecture to LLVM, accessible in parallel via the "arm64" triple. The plan over the coming weeks & months is to merge the two into a single backend, during which time thorough code review should naturally occur. Everything will be easier with the target in-tree though, hence this commit. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@205090 91177308-0d34-0410-b5e6-96231b3b80d8
22 lines
521 B
LLVM
22 lines
521 B
LLVM
; RUN: llc -march=arm64 -enable-no-nans-fp-math < %s | FileCheck %s
|
|
|
|
define double @test_direct(float %in) #1 {
|
|
entry:
|
|
%cmp = fcmp olt float %in, 0.000000e+00
|
|
%longer = fpext float %in to double
|
|
%val = select i1 %cmp, double 0.000000e+00, double %longer
|
|
ret double %val
|
|
|
|
; CHECK: fmax
|
|
}
|
|
|
|
define double @test_cross(float %in) #1 {
|
|
entry:
|
|
%cmp = fcmp olt float %in, 0.000000e+00
|
|
%longer = fpext float %in to double
|
|
%val = select i1 %cmp, double %longer, double 0.000000e+00
|
|
ret double %val
|
|
|
|
; CHECK: fmin
|
|
}
|