https://bugs.llvm.org/show_bug.cgi?id=44571

            Bug ID: 44571
           Summary: clang fails to set strictfp function attribute
           Product: clang
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: C++
          Assignee: unassignedclangb...@nondot.org
          Reporter: mib.bugzi...@gmail.com
                CC: blitzrak...@gmail.com, dgre...@apple.com,
                    erik.pilking...@gmail.com, llvm-bugs@lists.llvm.org,
                    richard-l...@metafoo.co.uk

I got an email about this issue:  It looks like clang isn't setting the
strictfp attribute added to the functions that use constrained intrinsics in
all cases. This problem has been identified in unary conversions, builtins, and
_Complex.

This fails to set the attribute, but uses constrained functions

float _Complex foo(float _Complex a, float _Complex b) {
return a + b;
}

Or this compiled with -fno-math-errno

float foo(float a, float b) {
return sinf(a);
}

Here's another example, https://godbolt.org/z/bcVV6A 

Andy Kaylor suggested "Can’t we mark functions with the strictfp attribute any
time a constrained mode is enabled within the function, regardless of whether
or not it uses an FP operation?  For example, functions get the
"unsafe-fp-math"="false" attribute without regard to whether or not they
contain fp operations. I would expect strictfp to be the same."

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to