Add strictfp attribute to prevent unwanted optimizations of libm calls

Differential Revision: https://reviews.llvm.org/D34163



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@310885 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Andrew Kaylor
2017-08-14 21:15:13 +00:00
parent 70284788c6
commit 68d0bd1ed4
22 changed files with 172 additions and 83 deletions
+5
View File
@@ -608,6 +608,7 @@ declare void @f.inaccessiblememonly() inaccessiblememonly
; CHECK: declare void @f.inaccessiblememonly() #33
declare void @f.inaccessiblemem_or_argmemonly() inaccessiblemem_or_argmemonly
; CHECK: declare void @f.inaccessiblemem_or_argmemonly() #34
declare void @f.strictfp() #35
; Functions -- section
declare void @f.section() section "80"
@@ -1252,6 +1253,9 @@ exit:
call void @f.nobuiltin() builtin
; CHECK: call void @f.nobuiltin() #42
call void @f.strictfp() strictfp
; CHECK: call void @f.strictfp() #43
call fastcc noalias i32* @f.noalias() noinline
; CHECK: call fastcc noalias i32* @f.noalias() #12
tail call ghccc nonnull i32* @f.nonnull() minsize
@@ -1670,6 +1674,7 @@ define i8** @constexpr() {
; CHECK: attributes #40 = { writeonly }
; CHECK: attributes #41 = { speculatable }
; CHECK: attributes #42 = { builtin }
; CHECK: attributes #43 = { strictfp }
;; Metadata