mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2025-05-13 17:37:00 +00:00

This restores the behavior prior to D31167 where the code-gen default was FPC_On which mapped to FPOpFusion::Standard. After merging the FE state (on/off) and the code-gen state (on/fast/off), the default became off to match the front-end. In other words, the front-end controls when to fuse along the language standards and the backend shouldn't override this by splitting fused intrinsics as FPOpFusion::Strict would imply. Differential Revision: https://reviews.llvm.org/D32301 llvm-svn: 300858
19 lines
408 B
C
19 lines
408 B
C
// RUN: %clang_cc1 -O3 -triple=aarch64-apple-ios -S -o - %s | FileCheck %s
|
|
// REQUIRES: aarch64-registered-target
|
|
|
|
float fma_test1(float a, float b, float c) {
|
|
#pragma STDC FP_CONTRACT ON
|
|
// CHECK-LABEL: fma_test1:
|
|
// CHECK: fmadd
|
|
float x = a * b + c;
|
|
return x;
|
|
}
|
|
|
|
float fma_test2(float a, float b, float c) {
|
|
// CHECK-LABEL: fma_test2:
|
|
// CHECK: fmul
|
|
// CHECK: fadd
|
|
float x = a * b + c;
|
|
return x;
|
|
}
|