[polly] 0b9ed5d - [polly] Remove unsafe-fp-math uses (NFC) (#164603)

via llvm-commits llvm-commits at lists.llvm.org
Wed Oct 22 07:04:18 PDT 2025


Author: paperchalice
Date: 2025-10-22T22:04:13+08:00
New Revision: 0b9ed5dc64149147aadc588d9077d80fb73a54d6

URL: https://github.com/llvm/llvm-project/commit/0b9ed5dc64149147aadc588d9077d80fb73a54d6
DIFF: https://github.com/llvm/llvm-project/commit/0b9ed5dc64149147aadc588d9077d80fb73a54d6.diff

LOG: [polly] Remove unsafe-fp-math uses (NFC) (#164603)

Post cleanup for #164534.

Added: 
    

Modified: 
    polly/docs/experiments/matmul/matmul.ll
    polly/docs/experiments/matmul/matmul.normalopt.ll
    polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector+openmp.ll
    polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector.ll
    polly/docs/experiments/matmul/matmul.polly.interchanged+tiled.ll
    polly/docs/experiments/matmul/matmul.polly.interchanged.ll
    polly/docs/experiments/matmul/matmul.preopt.ll
    polly/test/CodeGen/OpenMP/mapped-phi-access.ll
    polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll
    polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll
    polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll
    polly/test/CodeGen/debug-intrinsics.ll
    polly/test/CodeGen/error_block_contains_invalid_memory_access.ll
    polly/test/CodeGen/hoisting_1.ll
    polly/test/CodeGen/hoisting_2.ll
    polly/test/CodeGen/intrinsics_lifetime.ll
    polly/test/CodeGen/intrinsics_misc.ll
    polly/test/CodeGen/invariant_cannot_handle_void.ll
    polly/test/CodeGen/invariant_load_different_sized_types.ll
    polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll
    polly/test/CodeGen/invariant_verify_function_failed.ll
    polly/test/CodeGen/invariant_verify_function_failed_2.ll
    polly/test/CodeGen/loop-invariant-load-type-mismatch.ll
    polly/test/CodeGen/multiple-types-invariant-load-2.ll
    polly/test/CodeGen/out-of-scop-phi-node-use.ll
    polly/test/CodeGen/phi-defined-before-scop.ll
    polly/test/CodeGen/pr25241.ll
    polly/test/CodeGen/scev_expansion_in_nonaffine.ll
    polly/test/DependenceInfo/fine_grain_dep_0.ll
    polly/test/ForwardOpTree/atax.ll
    polly/test/ForwardOpTree/jacobi-1d.ll
    polly/test/IstAstInfo/runtime_context_with_error_blocks.ll
    polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll
    polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll
    polly/test/ScheduleOptimizer/prevectorization.ll
    polly/test/ScopDetect/error-block-always-executed.ll
    polly/test/ScopDetect/error-block-referenced-from-scop.ll
    polly/test/ScopDetect/expand-region-correctly-2.ll
    polly/test/ScopDetect/intrinsics_1.ll
    polly/test/ScopDetect/intrinsics_2.ll
    polly/test/ScopDetect/intrinsics_3.ll
    polly/test/ScopDetect/report-scop-location.ll
    polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll
    polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
    polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll
    polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
    polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll
    polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
    polly/test/ScopInfo/BoundChecks/single-loop.ll
    polly/test/ScopInfo/BoundChecks/two-loops.ll
    polly/test/ScopInfo/complex-expression.ll
    polly/test/ScopInfo/do-not-model-error-block-accesses.ll
    polly/test/ScopInfo/early_exit_for_complex_domains.ll
    polly/test/ScopInfo/expensive-boundary-context.ll
    polly/test/ScopInfo/intrinsics.ll
    polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll
    polly/test/ScopInfo/long-sequence-of-error-blocks.ll
    polly/test/ScopInfo/memcpy-raw-source.ll
    polly/test/ScopInfo/mismatching-array-dimensions.ll
    polly/test/ScopInfo/multidim_srem.ll
    polly/test/ScopInfo/remarks.ll
    polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll
    polly/test/ScopInfo/unnamed_stmts.ll
    polly/test/Simplify/phi_in_regionstmt.ll

Removed: 
    


################################################################################
diff  --git a/polly/docs/experiments/matmul/matmul.ll b/polly/docs/experiments/matmul/matmul.ll
index b5bc4b0b7f690..6c789edc19ea1 100644
--- a/polly/docs/experiments/matmul/matmul.ll
+++ b/polly/docs/experiments/matmul/matmul.ll
@@ -14,7 +14,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @.str.1 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @init_array() #0 {
+define dso_local void @init_array() {
 entry:
   %i = alloca i32, align 4
   %j = alloca i32, align 4
@@ -88,7 +88,7 @@ for.end19:                                        ; preds = %for.cond
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() #0 {
+define dso_local void @print_array() {
 entry:
   %i = alloca i32, align 4
   %j = alloca i32, align 4
@@ -154,10 +154,10 @@ for.end12:                                        ; preds = %for.cond
   ret void
 }
 
-declare dso_local i32 @fprintf(%struct._IO_FILE*, i8*, ...) #1
+declare dso_local i32 @fprintf(%struct._IO_FILE*, i8*, ...)
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local i32 @main() #0 {
+define dso_local i32 @main() {
 entry:
   %retval = alloca i32, align 4
   %i = alloca i32, align 4
@@ -261,9 +261,6 @@ for.end30:                                        ; preds = %for.cond
   ret i32 0
 }
 
-attributes #0 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}
 

diff  --git a/polly/docs/experiments/matmul/matmul.normalopt.ll b/polly/docs/experiments/matmul/matmul.normalopt.ll
index 1625dc7511a2b..a2c28b89da500 100644
--- a/polly/docs/experiments/matmul/matmul.normalopt.ll
+++ b/polly/docs/experiments/matmul/matmul.normalopt.ll
@@ -13,7 +13,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @C = common dso_local local_unnamed_addr global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: noinline norecurse nounwind uwtable writeonly
-define dso_local void @init_array() local_unnamed_addr #0 {
+define dso_local void @init_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -60,7 +60,7 @@ for.end19:                                        ; preds = %for.inc17
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() local_unnamed_addr #1 {
+define dso_local void @print_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -75,7 +75,7 @@ for.body3:                                        ; preds = %for.inc, %for.cond1
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #4
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -103,10 +103,10 @@ for.end12:                                        ; preds = %for.end
 }
 
 ; Function Attrs: nounwind
-declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr #2
+declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr
 
 ; Function Attrs: noinline norecurse nounwind uwtable
-define dso_local i32 @main() local_unnamed_addr #3 {
+define dso_local i32 @main() local_unnamed_addr {
 entry:
   tail call void @init_array()
   br label %for.cond1.preheader
@@ -164,13 +164,7 @@ for.end30:                                        ; preds = %for.inc28
 }
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr #4
-
-attributes #0 = { noinline norecurse nounwind uwtable writeonly "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nounwind }
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector+openmp.ll b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector+openmp.ll
index 3216d79c2b448..3be4393f3051a 100644
--- a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector+openmp.ll
+++ b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector+openmp.ll
@@ -13,18 +13,18 @@ target triple = "x86_64-unknown-linux-gnu"
 @C = common dso_local local_unnamed_addr global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @init_array() local_unnamed_addr #0 {
+define dso_local void @init_array() local_unnamed_addr {
 entry:
   %polly.par.userContext = alloca {}, align 8
   %polly.par.userContext1 = bitcast {}* %polly.par.userContext to i8*
-  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @init_array_polly_subfn, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 1) #3
-  call void @init_array_polly_subfn(i8* nonnull %polly.par.userContext1) #3
-  call void @GOMP_parallel_end() #3
+  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @init_array_polly_subfn, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 1)
+  call void @init_array_polly_subfn(i8* nonnull %polly.par.userContext1)
+  call void @GOMP_parallel_end()
   ret void
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() local_unnamed_addr #1 {
+define dso_local void @print_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -39,7 +39,7 @@ for.body3:                                        ; preds = %for.inc, %for.cond1
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #3
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -67,27 +67,27 @@ for.end12:                                        ; preds = %for.end
 }
 
 ; Function Attrs: nounwind
-declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr #2
+declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local i32 @main() local_unnamed_addr #0 {
+define dso_local i32 @main() local_unnamed_addr {
 entry:
   %polly.par.userContext3 = alloca {}, align 8
   tail call void @init_array()
   %polly.par.userContext1 = bitcast {}* %polly.par.userContext3 to i8*
-  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @main_polly_subfn, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 1) #3
-  call void @main_polly_subfn(i8* nonnull %polly.par.userContext1) #3
-  call void @GOMP_parallel_end() #3
-  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @main_polly_subfn_1, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 64) #3
-  call void @main_polly_subfn_1(i8* nonnull %polly.par.userContext1) #3
-  call void @GOMP_parallel_end() #3
+  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @main_polly_subfn, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 1)
+  call void @main_polly_subfn(i8* nonnull %polly.par.userContext1)
+  call void @GOMP_parallel_end()
+  call void @GOMP_parallel_loop_runtime_start(void (i8*)* nonnull @main_polly_subfn_1, i8* nonnull %polly.par.userContext1, i32 0, i64 0, i64 1536, i64 64)
+  call void @main_polly_subfn_1(i8* nonnull %polly.par.userContext1)
+  call void @GOMP_parallel_end()
   ret i32 0
 }
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr #3
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr
 
-define internal void @init_array_polly_subfn(i8* nocapture readnone %polly.par.userContext) #4 {
+define internal void @init_array_polly_subfn(i8* nocapture readnone %polly.par.userContext) {
 polly.par.setup:
   %polly.par.LBPtr = alloca i64, align 8
   %polly.par.UBPtr = alloca i64, align 8
@@ -146,7 +146,7 @@ declare void @GOMP_parallel_loop_runtime_start(void (i8*)*, i8*, i32, i64, i64,
 
 declare void @GOMP_parallel_end() local_unnamed_addr
 
-define internal void @main_polly_subfn(i8* nocapture readnone %polly.par.userContext) #4 {
+define internal void @main_polly_subfn(i8* nocapture readnone %polly.par.userContext) {
 polly.par.setup:
   %polly.par.LBPtr = alloca i64, align 8
   %polly.par.UBPtr = alloca i64, align 8
@@ -175,7 +175,7 @@ polly.par.loadIVBounds:                           ; preds = %polly.par.setup, %p
   br i1 %7, label %polly.par.exit, label %polly.par.loadIVBounds
 }
 
-define internal void @main_polly_subfn_1(i8* nocapture readnone %polly.par.userContext) #4 {
+define internal void @main_polly_subfn_1(i8* nocapture readnone %polly.par.userContext) {
 polly.par.setup:
   %polly.par.LBPtr = alloca i64, align 8
   %polly.par.UBPtr = alloca i64, align 8
@@ -363,14 +363,7 @@ vector.ph:                                        ; preds = %polly.loop_header14
 }
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1) #5
-
-attributes #0 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { nounwind }
-attributes #4 = { "polly.skip.fn" }
-attributes #5 = { argmemonly nounwind }
+declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector.ll b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector.ll
index 4afccd594245a..60228a455d56b 100644
--- a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector.ll
+++ b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled+vector.ll
@@ -13,7 +13,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @C = common dso_local local_unnamed_addr global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: noinline norecurse nounwind uwtable writeonly
-define dso_local void @init_array() local_unnamed_addr #0 {
+define dso_local void @init_array() local_unnamed_addr {
 entry:
   br label %polly.loop_header
 
@@ -61,7 +61,7 @@ polly.loop_header1:                               ; preds = %polly.loop_header1,
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() local_unnamed_addr #1 {
+define dso_local void @print_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -76,7 +76,7 @@ for.body3:                                        ; preds = %for.inc, %for.cond1
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #4
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -104,10 +104,10 @@ for.end12:                                        ; preds = %for.end
 }
 
 ; Function Attrs: nounwind
-declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr #2
+declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr
 
 ; Function Attrs: noinline norecurse nounwind uwtable
-define dso_local i32 @main() local_unnamed_addr #3 {
+define dso_local i32 @main() local_unnamed_addr {
 entry:
   tail call void @init_array()
   call void @llvm.memset.p0i8.i64(i8* align 16 bitcast ([1536 x [1536 x float]]* @C to i8*), i8 0, i64 9437184, i1 false)
@@ -282,17 +282,10 @@ vector.ph:                                        ; preds = %polly.loop_header26
 }
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr #4
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1) #5
-
-attributes #0 = { noinline norecurse nounwind uwtable writeonly "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nounwind }
-attributes #5 = { argmemonly nounwind }
+declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled.ll b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled.ll
index 0641b551ebecd..d2786e0272b02 100644
--- a/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled.ll
+++ b/polly/docs/experiments/matmul/matmul.polly.interchanged+tiled.ll
@@ -13,7 +13,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @C = common dso_local local_unnamed_addr global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: noinline norecurse nounwind uwtable writeonly
-define dso_local void @init_array() local_unnamed_addr #0 {
+define dso_local void @init_array() local_unnamed_addr {
 entry:
   br label %polly.loop_header
 
@@ -61,7 +61,7 @@ polly.loop_header1:                               ; preds = %polly.loop_header1,
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() local_unnamed_addr #1 {
+define dso_local void @print_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -76,7 +76,7 @@ for.body3:                                        ; preds = %for.inc, %for.cond1
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #4
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -104,10 +104,10 @@ for.end12:                                        ; preds = %for.end
 }
 
 ; Function Attrs: nounwind
-declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr #2
+declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr
 
 ; Function Attrs: noinline norecurse nounwind uwtable
-define dso_local i32 @main() local_unnamed_addr #3 {
+define dso_local i32 @main() local_unnamed_addr {
 entry:
   tail call void @init_array()
   call void @llvm.memset.p0i8.i64(i8* align 16 bitcast ([1536 x [1536 x float]]* @C to i8*), i8 0, i64 9437184, i1 false)
@@ -343,17 +343,10 @@ vector.ph:                                        ; preds = %polly.loop_header26
 }
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr #4
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1) #5
-
-attributes #0 = { noinline norecurse nounwind uwtable writeonly "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nounwind }
-attributes #5 = { argmemonly nounwind }
+declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/docs/experiments/matmul/matmul.polly.interchanged.ll b/polly/docs/experiments/matmul/matmul.polly.interchanged.ll
index bfc74f2bd290f..5854cadff1c2f 100644
--- a/polly/docs/experiments/matmul/matmul.polly.interchanged.ll
+++ b/polly/docs/experiments/matmul/matmul.polly.interchanged.ll
@@ -13,7 +13,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @C = common dso_local local_unnamed_addr global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: noinline norecurse nounwind uwtable writeonly
-define dso_local void @init_array() local_unnamed_addr #0 {
+define dso_local void @init_array() local_unnamed_addr {
 entry:
   br label %polly.loop_header
 
@@ -61,7 +61,7 @@ polly.loop_header1:                               ; preds = %polly.loop_header1,
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() local_unnamed_addr #1 {
+define dso_local void @print_array() local_unnamed_addr {
 entry:
   br label %for.cond1.preheader
 
@@ -76,7 +76,7 @@ for.body3:                                        ; preds = %for.inc, %for.cond1
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #4
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -104,10 +104,10 @@ for.end12:                                        ; preds = %for.end
 }
 
 ; Function Attrs: nounwind
-declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr #2
+declare dso_local i32 @fprintf(%struct._IO_FILE* nocapture, i8* nocapture readonly, ...) local_unnamed_addr
 
 ; Function Attrs: noinline norecurse nounwind uwtable
-define dso_local i32 @main() local_unnamed_addr #3 {
+define dso_local i32 @main() local_unnamed_addr {
 entry:
   tail call void @init_array()
   call void @llvm.memset.p0i8.i64(i8* align 16 bitcast ([1536 x [1536 x float]]* @C to i8*), i8 0, i64 9437184, i1 false)
@@ -189,17 +189,10 @@ polly.loop_exit22:                                ; preds = %vector.body
 }
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr #4
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture) local_unnamed_addr
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1) #5
-
-attributes #0 = { noinline norecurse nounwind uwtable writeonly "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "polly-optimized" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nounwind }
-attributes #5 = { argmemonly nounwind }
+declare void @llvm.memset.p0i8.i64(i8* nocapture writeonly, i8, i64, i1)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/docs/experiments/matmul/matmul.preopt.ll b/polly/docs/experiments/matmul/matmul.preopt.ll
index 3b9446fcc9668..e55be8bad6f2e 100644
--- a/polly/docs/experiments/matmul/matmul.preopt.ll
+++ b/polly/docs/experiments/matmul/matmul.preopt.ll
@@ -14,7 +14,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @.str.1 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @init_array() #0 {
+define dso_local void @init_array() {
 entry:
   br label %entry.split
 
@@ -52,7 +52,7 @@ for.end19:                                        ; preds = %for.inc17
 }
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local void @print_array() #0 {
+define dso_local void @print_array() {
 entry:
   br label %entry.split
 
@@ -70,7 +70,7 @@ for.body3:                                        ; preds = %for.cond1.preheader
   %arrayidx5 = getelementptr inbounds [1536 x [1536 x float]], [1536 x [1536 x float]]* @C, i64 0, i64 %indvars.iv6, i64 %indvars.iv
   %2 = load float, float* %arrayidx5, align 4
   %conv = fpext float %2 to double
-  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv) #2
+  %call = tail call i32 (%struct._IO_FILE*, i8*, ...) @fprintf(%struct._IO_FILE* %1, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str, i64 0, i64 0), double %conv)
   %3 = trunc i64 %indvars.iv to i32
   %rem = urem i32 %3, 80
   %cmp6 = icmp eq i32 %rem, 79
@@ -98,10 +98,10 @@ for.end12:                                        ; preds = %for.end
   ret void
 }
 
-declare dso_local i32 @fprintf(%struct._IO_FILE*, i8*, ...) #1
+declare dso_local i32 @fprintf(%struct._IO_FILE*, i8*, ...)
 
 ; Function Attrs: noinline nounwind uwtable
-define dso_local i32 @main() #0 {
+define dso_local i32 @main() {
 entry:
   br label %entry.split
 
@@ -148,14 +148,10 @@ for.end30:                                        ; preds = %for.inc28
 }
 
 ; Function Attrs: nounwind
-declare i64 @fwrite(i8* nocapture, i64, i64, %struct._IO_FILE* nocapture) #2
+declare i64 @fwrite(i8* nocapture, i64, i64, %struct._IO_FILE* nocapture)
 
 ; Function Attrs: nounwind
-declare i32 @fputc(i32, %struct._IO_FILE* nocapture) #2
-
-attributes #0 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind }
+declare i32 @fputc(i32, %struct._IO_FILE* nocapture)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}

diff  --git a/polly/test/CodeGen/OpenMP/mapped-phi-access.ll b/polly/test/CodeGen/OpenMP/mapped-phi-access.ll
index ac78b4e6c0c55..4deab1af0ccf0 100644
--- a/polly/test/CodeGen/OpenMP/mapped-phi-access.ll
+++ b/polly/test/CodeGen/OpenMP/mapped-phi-access.ll
@@ -5,7 +5,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @main() local_unnamed_addr #0 {
+define void @main() local_unnamed_addr {
 entry:
   %0 = load ptr, ptr undef, align 8, !tbaa !1
   %1 = load ptr, ptr undef, align 8, !tbaa !1
@@ -35,8 +35,6 @@ kernel_gemver_StrictFP.exit:                      ; preds = %for.inc85.i238
   ret void
 }
 
-attributes #0 = { nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 6.0.0 "}
@@ -47,7 +45,6 @@ attributes #0 = { nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="fals
 !5 = !{!6, !6, i64 0}
 !6 = !{!"double", !3, i64 0}
 
-
 ; CHECK-LABEL: define internal void @main_polly_subfn(ptr %polly.par.userContext)
 ;
 ; CHECK:       polly.stmt.for.body65.i226:

diff  --git a/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll b/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll
index 96dc4250cd05f..c207f589e4da0 100644
--- a/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll
+++ b/polly/test/CodeGen/OpenMP/reference-argument-from-non-affine-region.ll
@@ -23,7 +23,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @longLimit = external global [9 x [23 x i32]], align 16
 @shortLimit = external global [9 x [14 x i32]], align 16
 
-define void @init_layer3(i32 %down_sample_sblimit) #0 {
+define void @init_layer3(i32 %down_sample_sblimit) {
 entry:
   br label %for.cond.463.preheader
 
@@ -63,8 +63,6 @@ for.inc.530:                                      ; preds = %for.inc.527
   br i1 %exitcond142, label %for.cond.499.preheader, label %for.cond.533.preheader
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 246359)"}

diff  --git a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll
index 6ffe6bf67d54f..dfef4202391d4 100644
--- a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll
+++ b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_1.ll
@@ -35,7 +35,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @global4 = external global ptr, align 8
 
 ; Function Attrs: uwtable
-define i32 @foo(ptr %arg) #0 personality ptr @blam {
+define i32 @foo(ptr %arg) personality ptr @blam {
 bb:
   br label %bb3
 
@@ -83,40 +83,33 @@ bb19:                                             ; preds = %bb19, %bb14
 }
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.start(i64, ptr nocapture) #1
+declare void @llvm.lifetime.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind readnone
-declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) #2
+declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64)
 
 ; Function Attrs: nobuiltin
-declare noalias ptr @eggs(i64) #3
+declare noalias ptr @eggs(i64)
 
 ; Function Attrs: nobuiltin
-declare noalias ptr @bar(i64) #3
+declare noalias ptr @bar(i64)
 
 ; Function Attrs: uwtable
-declare void @zot(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr #0 align 2
+declare void @zot(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr align 2
 
 declare i32 @blam(...)
 
 ; Function Attrs: nobuiltin nounwind
-declare void @zot5(ptr) #4
+declare void @zot5(ptr)
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.lifetime.end(i64, ptr nocapture) #1
+declare void @llvm.lifetime.end(i64, ptr nocapture)
 
 ; Function Attrs: uwtable
-declare i32 @eggs6(ptr) #0
+declare i32 @eggs6(ptr)
 
 ; Function Attrs: nounwind uwtable
-declare void @eggs7(ptr, i32, i32, i32) unnamed_addr #5 align 2
-
-attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { argmemonly nounwind }
-attributes #2 = { nounwind readnone }
-attributes #3 = { nobuiltin "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nobuiltin nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #5 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
+declare void @eggs7(ptr, i32, i32, i32) unnamed_addr align 2
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll
index 68c247a608311..fcc6764ce9c21 100644
--- a/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll
+++ b/polly/test/CodeGen/dead_invariant_load_instruction_referenced_by_parameter_2.ll
@@ -8,7 +8,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @REGISTER = external global [10 x i32], align 16
 
 ; Function Attrs: nounwind uwtable
-define void @FORMAT3_4() #0 {
+define void @FORMAT3_4() {
 entry:
   %INSTR = alloca [32 x i32], align 16
   br label %entry.split
@@ -20,7 +20,7 @@ entry.split:                                      ; preds = %entry
   br i1 %cmp, label %if.end.36, label %if.else
 
 if.else:                                          ; preds = %entry.split
-  call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef) #2
+  call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef)
   %1 = load i32, ptr undef, align 4
   %cmp14 = icmp eq i32 %1, 1
   br i1 %cmp14, label %land.lhs.true, label %if.end.36
@@ -179,8 +179,4 @@ return:                                           ; preds = %if.then.219, %if.th
   ret void
 }
 
-declare void @BYTES_TO_BITS(...) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind }
+declare void @BYTES_TO_BITS(...)

diff  --git a/polly/test/CodeGen/debug-intrinsics.ll b/polly/test/CodeGen/debug-intrinsics.ll
index 65fa6780d9720..ed4b81a8e3a3c 100644
--- a/polly/test/CodeGen/debug-intrinsics.ll
+++ b/polly/test/CodeGen/debug-intrinsics.ll
@@ -9,7 +9,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @foo(ptr %A, i64 %N) #0 !dbg !4 {
+define void @foo(ptr %A, i64 %N) !dbg !4 {
 entry:
   br label %entry.split
 
@@ -49,13 +49,10 @@ for.end:                                          ; preds = %for.cond.for.end_cr
 ; CHECK-NOT: #dbg_value
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
+declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.value(metadata, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.dbg.value(metadata, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!11, !12}

diff  --git a/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll b/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll
index 008e16caf9c23..abec28894f45b 100644
--- a/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll
+++ b/polly/test/CodeGen/error_block_contains_invalid_memory_access.ll
@@ -17,10 +17,10 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 %struct.timeb.11.32.53.242.347.557.599.851.998.1208.2069.2153.2174.2237.2258.2279.2321 = type { i64, i16, i16, i16 }
 %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323 = type { i32, i32, i32, i32, i32, i32 }
 
-declare void @getLuma4x4Neighbour() #0
+declare void @getLuma4x4Neighbour()
 
 ; Function Attrs: nounwind uwtable
-define void @readCBP_CABAC(ptr %img) #1 {
+define void @readCBP_CABAC(ptr %img) {
 entry:
   %block_a = alloca %struct.pix_pos.13.34.55.244.349.559.601.853.1000.1210.2071.2155.2176.2239.2260.2281.2323, align 4
   %mb_data = getelementptr inbounds %struct.img_par.12.33.54.243.348.558.600.852.999.1209.2070.2154.2175.2238.2259.2280.2322, ptr %img, i64 0, i32 39
@@ -45,7 +45,7 @@ if.end.35:                                        ; preds = %if.else.19, %if.els
   br i1 %cmp36, label %if.then.38, label %if.else.66
 
 if.then.38:                                       ; preds = %if.end.35
-  call void @getLuma4x4Neighbour() #2
+  call void @getLuma4x4Neighbour()
   %0 = load i32, ptr null, align 4
   %tobool = icmp eq i32 %0, 0
   br i1 %tobool, label %if.end.72, label %if.then.42
@@ -72,7 +72,3 @@ for.inc.84:                                       ; preds = %if.end.72
 for.end.86:                                       ; preds = %for.inc.84
   ret void
 }
-
-attributes #0 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind }

diff  --git a/polly/test/CodeGen/hoisting_1.ll b/polly/test/CodeGen/hoisting_1.ll
index 1f065bec80327..aa29bfd7dbcbc 100644
--- a/polly/test/CodeGen/hoisting_1.ll
+++ b/polly/test/CodeGen/hoisting_1.ll
@@ -26,7 +26,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 %struct.bar.11 = type { ptr, ptr, ptr }
 
 ; Function Attrs: nounwind uwtable
-define void @foo(ptr %arg) #0 {
+define void @foo(ptr %arg) {
 bb:
   br label %bb2
 
@@ -49,8 +49,6 @@ bb10:                                             ; preds = %bb9
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0 (trunk 259751) (llvm/trunk 259869)"}

diff  --git a/polly/test/CodeGen/hoisting_2.ll b/polly/test/CodeGen/hoisting_2.ll
index e76ee066af08d..1b913f2cb07be 100644
--- a/polly/test/CodeGen/hoisting_2.ll
+++ b/polly/test/CodeGen/hoisting_2.ll
@@ -27,7 +27,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 %struct.foo.12 = type { %struct.foo.4, i32, i32, i32, i32 }
 
 ; Function Attrs: nounwind uwtable
-define void @eggs(ptr %arg) #0 {
+define void @eggs(ptr %arg) {
 bb:
   %tmp = load ptr, ptr undef, align 8, !tbaa !1
   br label %bb5
@@ -62,8 +62,6 @@ bb22:                                             ; preds = %bb13.bb22_crit_edge
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0 (trunk 259751) (llvm/trunk 259869)"}

diff  --git a/polly/test/CodeGen/intrinsics_lifetime.ll b/polly/test/CodeGen/intrinsics_lifetime.ll
index 6dca218b63862..a708548798ebb 100644
--- a/polly/test/CodeGen/intrinsics_lifetime.ll
+++ b/polly/test/CodeGen/intrinsics_lifetime.ll
@@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @A = common global [1024 x i32] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @jd() #0 {
+define void @jd() {
 entry:
   %tmp = alloca [1024 x i32], align 16
   br label %for.cond
@@ -32,7 +32,7 @@ for.cond:                                         ; preds = %for.inc11, %entry
   br i1 %exitcond5, label %for.body, label %for.end13
 
 for.body:                                         ; preds = %for.cond
-  call void @llvm.lifetime.start(i64 4096, ptr %tmp) #1
+  call void @llvm.lifetime.start(i64 4096, ptr %tmp)
   br label %for.cond2
 
 for.cond2:                                        ; preds = %for.inc, %for.body
@@ -59,7 +59,7 @@ for.end:                                          ; preds = %for.cond2
   %tmp8 = load i32, ptr %arrayidx8, align 4
   %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3
   store i32 %tmp8, ptr %arrayidx10, align 4
-  call void @llvm.lifetime.end(i64 4096, ptr %tmp) #1
+  call void @llvm.lifetime.end(i64 4096, ptr %tmp)
   br label %for.inc11
 
 for.inc11:                                        ; preds = %for.end
@@ -71,10 +71,7 @@ for.end13:                                        ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, ptr nocapture) #1
+declare void @llvm.lifetime.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, ptr nocapture) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #1 = { nounwind }
+declare void @llvm.lifetime.end(i64, ptr nocapture)

diff  --git a/polly/test/CodeGen/intrinsics_misc.ll b/polly/test/CodeGen/intrinsics_misc.ll
index 84164893ebf72..a643b8accd4e9 100644
--- a/polly/test/CodeGen/intrinsics_misc.ll
+++ b/polly/test/CodeGen/intrinsics_misc.ll
@@ -28,7 +28,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @A = common global [1024 x i32] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @jd() #0 {
+define void @jd() {
 entry:
   %tmp = alloca [1024 x i32], align 16
   br label %for.cond
@@ -39,7 +39,7 @@ for.cond:                                         ; preds = %for.inc11, %entry
   br i1 %exitcond5, label %for.body, label %for.end13
 
 for.body:                                         ; preds = %for.cond
-  %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A) #1
+  %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A)
   br label %for.cond2
 
 for.cond2:                                        ; preds = %for.inc, %for.body
@@ -68,7 +68,7 @@ for.end:                                          ; preds = %for.cond2
   %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3
   %tmp8 = load i32, ptr %arrayidx8, align 4
   %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3
-  call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A) #1
+  call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A)
   store i32 %tmp8, ptr %arrayidx10, align 4
   br label %for.inc11
 
@@ -81,19 +81,16 @@ for.end13:                                        ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind
-declare void @llvm.donothing() #1
+declare void @llvm.donothing()
 
 ; Function Attrs: nounwind
-declare void @llvm.assume(i1) #1
+declare void @llvm.assume(i1)
 
 ; Function Attrs: nounwind
-declare i1 @llvm.expect.i1(i1, i1) #1
+declare i1 @llvm.expect.i1(i1, i1)
 
 ; Function Attrs: nounwind
-declare ptr @llvm.invariant.start(i64, ptr nocapture) #1
+declare ptr @llvm.invariant.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind
-declare void @llvm.invariant.end(ptr, i64, ptr nocapture) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #1 = { nounwind }
+declare void @llvm.invariant.end(ptr, i64, ptr nocapture)

diff  --git a/polly/test/CodeGen/invariant_cannot_handle_void.ll b/polly/test/CodeGen/invariant_cannot_handle_void.ll
index 0859a4e4997e1..420cb608f9ba4 100644
--- a/polly/test/CodeGen/invariant_cannot_handle_void.ll
+++ b/polly/test/CodeGen/invariant_cannot_handle_void.ll
@@ -24,7 +24,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @sudecrypt(ptr %buff) #0 {
+define void @sudecrypt(ptr %buff) {
 entry:
   br i1 undef, label %cleanup, label %if.end
 
@@ -62,8 +62,6 @@ cleanup:                                          ; preds = %entry
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/CodeGen/invariant_load_
diff erent_sized_types.ll b/polly/test/CodeGen/invariant_load_
diff erent_sized_types.ll
index 2995bce4c6601..0a88bb70966d2 100644
--- a/polly/test/CodeGen/invariant_load_
diff erent_sized_types.ll
+++ b/polly/test/CodeGen/invariant_load_
diff erent_sized_types.ll
@@ -8,11 +8,10 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 ; CHECK-NEXT:   %polly.access.tmp2.load = load i32, ptr %polly.access.tmp2, align 1
 ; CHECK-NEXT:   store i32 %polly.access.tmp2.load, ptr %tmp.preload.s2a
 
-
 %struct.hoge = type { [4 x i8], i32, i32, i32, i32, i32, [16 x i8], [16 x i8], i64, i64, i64, i64, i64 }
 
 ; Function Attrs: nounwind uwtable
-define void @widget() #0 {
+define void @widget() {
 bb:
   %tmp2 = alloca %struct.hoge, align 1
   br label %bb3
@@ -40,8 +39,6 @@ bb13:                                             ; preds = %bb10
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0 (trunk 259751) (llvm/trunk 259771)"}

diff  --git a/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll b/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll
index 01b01761d908b..5a11adcdebbc5 100644
--- a/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll
+++ b/polly/test/CodeGen/invariant_load_not_executed_but_in_parameters.ll
@@ -35,7 +35,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @donestkptr = external global ptr, align 8
 
 ; Function Attrs: uwtable
-define i32 @_Z13dotableswitchP9Classfile(ptr %c) #0 personality ptr @__gxx_personality_v0 {
+define i32 @_Z13dotableswitchP9Classfile(ptr %c) personality ptr @__gxx_personality_v0 {
 entry:
   br label %entry.split
 
@@ -82,33 +82,27 @@ for.end:                                          ; preds = %for.cond.for.end_cr
 }
 
 ; Function Attrs: nounwind readnone
-declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64) #1
+declare { i64, i1 } @llvm.umul.with.overflow.i64(i64, i64)
 
 ; Function Attrs: nobuiltin
-declare noalias ptr @_Znam(i64) #2
+declare noalias ptr @_Znam(i64)
 
 ; Function Attrs: nobuiltin
-declare noalias ptr @_Znwm(i64) #2
+declare noalias ptr @_Znwm(i64)
 
 ; Function Attrs: uwtable
-declare void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr #0 align 2
+declare void @_ZN3ExpC2Ejj7Exptype4Type2OpPS_jjP4Case(ptr, i32, i32, i32, i32, i32, ptr, i32, i32, ptr) unnamed_addr align 2
 
 declare i32 @__gxx_personality_v0(...)
 
 ; Function Attrs: nobuiltin nounwind
-declare void @_ZdlPv(ptr) #3
+declare void @_ZdlPv(ptr)
 
 ; Function Attrs: uwtable
-declare i32 @_Z10doluswitchP9Classfile(ptr) #0
+declare i32 @_Z10doluswitchP9Classfile(ptr)
 
 ; Function Attrs: nounwind uwtable
-declare void @_ZN4Exp_C2E7Exptype4Type2Op(ptr, i32, i32, i32) unnamed_addr #4 align 2
-
-attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
-attributes #2 = { nobuiltin "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { nobuiltin nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #4 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
+declare void @_ZN4Exp_C2E7Exptype4Type2Op(ptr, i32, i32, i32) unnamed_addr align 2
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/CodeGen/invariant_verify_function_failed.ll b/polly/test/CodeGen/invariant_verify_function_failed.ll
index c9affac076e92..1dcc175ebb163 100644
--- a/polly/test/CodeGen/invariant_verify_function_failed.ll
+++ b/polly/test/CodeGen/invariant_verify_function_failed.ll
@@ -15,7 +15,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @fileblobSetFilename() #0 {
+define void @fileblobSetFilename() {
 entry:
   br i1 undef, label %if.end, label %cleanup
 
@@ -23,7 +23,7 @@ if.end:                                           ; preds = %entry
   br i1 undef, label %land.lhs.true, label %if.end.18
 
 land.lhs.true:                                    ; preds = %if.end
-  %call9 = tail call ptr @__errno_location() #2
+  %call9 = tail call ptr @__errno_location()
   %tmp = load i32, ptr %call9, align 4, !tbaa !1
   br i1 false, label %if.then.12, label %if.end.18
 
@@ -45,11 +45,7 @@ cleanup:                                          ; preds = %if.end.27, %entry
 }
 
 ; Function Attrs: nounwind readnone
-declare ptr @__errno_location() #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind readnone }
+declare ptr @__errno_location()
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/CodeGen/invariant_verify_function_failed_2.ll b/polly/test/CodeGen/invariant_verify_function_failed_2.ll
index 7ef5608d7d197..43b3d99e11a2f 100644
--- a/polly/test/CodeGen/invariant_verify_function_failed_2.ll
+++ b/polly/test/CodeGen/invariant_verify_function_failed_2.ll
@@ -39,7 +39,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @enc_picture = external global ptr, align 8
 
 ; Function Attrs: nounwind uwtable
-define void @compute_colocated(ptr %listX, ptr %A, ptr %B) #0 {
+define void @compute_colocated(ptr %listX, ptr %A, ptr %B) {
 entry:
   br label %for.body2414
 
@@ -82,8 +82,6 @@ if.end2624:                                       ; preds = %for.inc2621
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0"}

diff  --git a/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll b/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll
index d9065858ff250..f43247b3e5057 100644
--- a/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll
+++ b/polly/test/CodeGen/loop-invariant-load-type-mismatch.ll
@@ -5,7 +5,7 @@ target triple = "x86_64-unknown-linux-gnu"
 
 ; Just make sure this test passes correctly.
 
-define void @kernel_ludcmp(ptr %b, ptr %y) #0 {
+define void @kernel_ludcmp(ptr %b, ptr %y) {
 entry:
   br label %entry.split
 
@@ -115,8 +115,6 @@ for.end.131:                                      ; preds = %for.end.118
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/CodeGen/multiple-types-invariant-load-2.ll b/polly/test/CodeGen/multiple-types-invariant-load-2.ll
index f6aca37c932bd..101fcaff0c82e 100644
--- a/polly/test/CodeGen/multiple-types-invariant-load-2.ll
+++ b/polly/test/CodeGen/multiple-types-invariant-load-2.ll
@@ -5,7 +5,7 @@
 
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-define void @hoge(ptr %arg) #0 {
+define void @hoge(ptr %arg) {
 bb:
   br label %bb3
 
@@ -22,8 +22,6 @@ bb7:                                              ; preds = %bb4, %bb3
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0 (trunk 259751) (llvm/trunk 259869)"}

diff  --git a/polly/test/CodeGen/out-of-scop-phi-node-use.ll b/polly/test/CodeGen/out-of-scop-phi-node-use.ll
index a4f942309ed28..dd0a24b14a3b8 100644
--- a/polly/test/CodeGen/out-of-scop-phi-node-use.ll
+++ b/polly/test/CodeGen/out-of-scop-phi-node-use.ll
@@ -13,7 +13,7 @@ target triple = "x86_64-unknown-linux-gnu"
 ; CHECK-NEXT: %_s.sroa.343.0.ph5161118.ph.final_reload = load i32, ptr %_s.sroa.343.0.ph5161118.s2a
 
 ; Function Attrs: nounwind uwtable
-define void @lzmaDecode() #0 {
+define void @lzmaDecode() {
 entry:
   br label %for.cond.outer.outer.outer
 
@@ -54,8 +54,6 @@ cleanup.1072:                                     ; preds = %for.cond
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/CodeGen/phi-defined-before-scop.ll b/polly/test/CodeGen/phi-defined-before-scop.ll
index 23612061156d9..447a14e9999c2 100644
--- a/polly/test/CodeGen/phi-defined-before-scop.ll
+++ b/polly/test/CodeGen/phi-defined-before-scop.ll
@@ -14,7 +14,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @global = external global ptr, align 8
 
 ; Function Attrs: nounwind uwtable
-define void @wobble() #0 {
+define void @wobble() {
 bb:
   br label %bb1
 
@@ -41,8 +41,6 @@ bb9:                                              ; preds = %bb8
   unreachable
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/CodeGen/pr25241.ll b/polly/test/CodeGen/pr25241.ll
index 4a4add8ba2a6d..7547b0bbed749 100644
--- a/polly/test/CodeGen/pr25241.ll
+++ b/polly/test/CodeGen/pr25241.ll
@@ -20,12 +20,11 @@
 ; CHECK:         %curr.3.ph.final_reload = load i32, ptr %curr.3.s2a
 ; CHECK:         br label
 
-
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: nounwind uwtable
-define void @BZ2_decompress() #0 {
+define void @BZ2_decompress() {
 entry:
   %tmp = load i32, ptr undef, align 4, !tbaa !1
   switch i32 undef, label %save_state_and_return [
@@ -56,8 +55,6 @@ save_state_and_return:                            ; preds = %entry
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/CodeGen/scev_expansion_in_nonaffine.ll b/polly/test/CodeGen/scev_expansion_in_nonaffine.ll
index 6c6c2572da109..0adb0ba7eea81 100644
--- a/polly/test/CodeGen/scev_expansion_in_nonaffine.ll
+++ b/polly/test/CodeGen/scev_expansion_in_nonaffine.ll
@@ -31,7 +31,7 @@ target triple = "x86_64-unknown-linux-gnu"
 @reduce_sidechannel = external global i32, align 4
 
 ; Function Attrs: nounwind uwtable
-define void @iteration_init(ptr %gfp, ptr %l3_side, ptr %l3_enc) #0 {
+define void @iteration_init(ptr %gfp, ptr %l3_side, ptr %l3_enc) {
 entry:
   %resvDrain = getelementptr inbounds %struct.III_side_info_t.7.62.139.227.293, ptr %l3_side, i64 0, i32 2
   store i32 0, ptr %resvDrain, align 8
@@ -86,5 +86,3 @@ for.inc.117:                                      ; preds = %for.inc.114, %for.c
   %cmp95 = icmp slt i64 %indvars.iv.next158, %6
   br i1 %cmp95, label %for.cond.98.preheader, label %for.cond.120.preheader
 }
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }

diff  --git a/polly/test/DependenceInfo/fine_grain_dep_0.ll b/polly/test/DependenceInfo/fine_grain_dep_0.ll
index f93814c1c4be0..5abbf48136891 100644
--- a/polly/test/DependenceInfo/fine_grain_dep_0.ll
+++ b/polly/test/DependenceInfo/fine_grain_dep_0.ll
@@ -31,7 +31,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: nounwind uwtable
-define void @test(ptr %a, ptr %b, i64 %N) #0 {
+define void @test(ptr %a, ptr %b, i64 %N) {
 entry:
   br label %for.cond
 
@@ -67,8 +67,6 @@ for.end:                                          ; preds = %for.cond
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0"}

diff  --git a/polly/test/ForwardOpTree/atax.ll b/polly/test/ForwardOpTree/atax.ll
index 496e8315b068b..6c81fb12e8cdc 100644
--- a/polly/test/ForwardOpTree/atax.ll
+++ b/polly/test/ForwardOpTree/atax.ll
@@ -2,7 +2,7 @@
 
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-define internal fastcc void @kernel_atax(ptr nocapture readonly %A, ptr nocapture readonly %x, ptr nocapture %y, ptr nocapture %tmp) unnamed_addr #0 {
+define internal fastcc void @kernel_atax(ptr nocapture readonly %A, ptr nocapture readonly %x, ptr nocapture %y, ptr nocapture %tmp) unnamed_addr {
 entry:
   br label %entry.split
 
@@ -61,10 +61,7 @@ for.end42:                                        ; preds = %for.inc40
 }
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i32, i1) #1
-
-attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { argmemonly nounwind }
+declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i32, i1)
 
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}
@@ -78,7 +75,6 @@ attributes #1 = { argmemonly nounwind }
 !6 = !{!7, !7, i64 0}
 !7 = !{!"double", !4, i64 0}
 
-
 ; CHECK: Statistics {
 ; CHECK:     Operand trees forwarded: 2
 ; CHECK:     Statements with forwarded operand trees: 2

diff  --git a/polly/test/ForwardOpTree/jacobi-1d.ll b/polly/test/ForwardOpTree/jacobi-1d.ll
index c9c71a15a4261..cb035bb749c7b 100644
--- a/polly/test/ForwardOpTree/jacobi-1d.ll
+++ b/polly/test/ForwardOpTree/jacobi-1d.ll
@@ -2,7 +2,7 @@
 
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-define internal fastcc void @kernel_jacobi_1d(ptr noalias nocapture %A, ptr noalias nocapture %B) unnamed_addr #0 {
+define internal fastcc void @kernel_jacobi_1d(ptr noalias nocapture %A, ptr noalias nocapture %B) unnamed_addr {
 entry:
   br label %entry.split
 
@@ -46,8 +46,6 @@ for.end35:                                        ; preds = %for.inc33
   ret void
 }
 
-attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}
 
@@ -60,7 +58,6 @@ attributes #0 = { noinline norecurse nounwind uwtable "correctly-rounded-divide-
 !6 = !{!7, !7, i64 0}
 !7 = !{!"double", !4, i64 0}
 
-
 ; CHECK: Statistics {
 ; CHECK:     Operand trees forwarded: 2
 ; CHECK:     Statements with forwarded operand trees: 1

diff  --git a/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll b/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll
index 8c3f230cb413c..aef509a865b6a 100644
--- a/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll
+++ b/polly/test/IstAstInfo/runtime_context_with_error_blocks.ll
@@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 $_ZNKSt5ctypeIcE5widenEc = comdat any
 
 ; Function Attrs: uwtable
-define weak_odr signext i8 @_ZNKSt5ctypeIcE5widenEc(ptr %this, i8 signext %__c) #0 comdat align 2 {
+define weak_odr signext i8 @_ZNKSt5ctypeIcE5widenEc(ptr %this, i8 signext %__c) comdat align 2 {
 entry:
   br label %entry.split
 
@@ -45,10 +45,7 @@ return:                                           ; preds = %if.end, %if.then
   ret i8 %retval.0
 }
 
-declare void @_ZNKSt5ctypeIcE13_M_widen_initEv(ptr) #1
-
-attributes #0 = { uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
+declare void @_ZNKSt5ctypeIcE13_M_widen_initEv(ptr)
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll
index 6e9ade869ec6c..a19b93d9915dd 100644
--- a/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll
+++ b/polly/test/ScheduleOptimizer/pattern-matching-based-opts-after-delicm.ll
@@ -47,7 +47,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: norecurse nounwind uwtable
-define void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, ptr nocapture %tmp, ptr nocapture readonly %A, ptr nocapture readonly %B, ptr nocapture readnone %C, ptr nocapture readnone %D) local_unnamed_addr #0 {
+define void @kernel_2mm(i32 %ni, i32 %nj, i32 %nk, i32 %nl, double %alpha, double %beta, ptr nocapture %tmp, ptr nocapture readonly %A, ptr nocapture readonly %B, ptr nocapture readnone %C, ptr nocapture readnone %D) local_unnamed_addr {
 entry:
   br label %entry.split
 
@@ -93,8 +93,6 @@ for.end27:                                        ; preds = %for.inc25
   ret void
 }
 
-attributes #0 = { norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512ifma,-avx512pf,-avx512vbmi,-avx512vl,-avx512vpopcntdq,-clflushopt,-clwb,-clzero,-fma4,-lwp,-mwaitx,-pku,-prefetchwt1,-prfchw,-rdseed,-rtm,-sgx,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.module.flags = !{!0}
 !llvm.ident = !{!1}
 

diff  --git a/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll b/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll
index a18ba1daef84b..1c6d289744e39 100644
--- a/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll
+++ b/polly/test/ScheduleOptimizer/prevectorization-without-tiling.ll
@@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @B = common global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @foo() #0 {
+define void @foo() {
 entry:
   br label %entry.split
 
@@ -51,8 +51,6 @@ for.end30:                                        ; preds = %for.inc28
   ret void
 }
 
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 ; CHECK: #pragma known-parallel
 ; CHECK: for (int c0 = 0; c0 <= 1535; c0 += 1)
 ; CHECK:   for (int c1 = 0; c1 <= 383; c1 += 1)

diff  --git a/polly/test/ScheduleOptimizer/prevectorization.ll b/polly/test/ScheduleOptimizer/prevectorization.ll
index 4db61ad032ea8..1ff20d165ce5e 100644
--- a/polly/test/ScheduleOptimizer/prevectorization.ll
+++ b/polly/test/ScheduleOptimizer/prevectorization.ll
@@ -8,7 +8,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @B = common global [1536 x [1536 x float]] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @foo() #0 {
+define void @foo() {
 entry:
   br label %entry.split
 
@@ -53,8 +53,6 @@ for.end30:                                        ; preds = %for.inc28
   ret void
 }
 
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 ; CHECK: #pragma known-parallel
 ; CHECK: for (int c0 = 0; c0 <= 47; c0 += 1)
 ; CHECK:   for (int c1 = 0; c1 <= 47; c1 += 1)
@@ -95,7 +93,6 @@ attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"=
 ; VEC16:                 Stmt_for_body8(32 * c0 + c3, 32 * c1 + 16 * c4 + c6, 32 * c2 + c5);
 ; VEC16: }
 
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.5.0 "}

diff  --git a/polly/test/ScopDetect/error-block-always-executed.ll b/polly/test/ScopDetect/error-block-always-executed.ll
index d799d575a530b..20d02b1c1ae0b 100644
--- a/polly/test/ScopDetect/error-block-always-executed.ll
+++ b/polly/test/ScopDetect/error-block-always-executed.ll
@@ -8,14 +8,14 @@ target triple = "x86_64-unknown-linux-gnu"
 %struct.hoge = type { i32, i32, i32, i32 }
 
 ; Function Attrs: nounwind uwtable
-define void @widget() #0 {
+define void @widget() {
 bb13:
   %tmp1 = alloca %struct.hoge, align 4
   br i1 undef, label %bb14, label %bb19
 
 bb14:                                             ; preds = %bb13
   %tmp = load i32, ptr undef, align 4, !tbaa !1
-  call void @quux() #2
+  call void @quux()
   br i1 false, label %bb15, label %bb18
 
 bb15:                                             ; preds = %bb14
@@ -46,11 +46,7 @@ bb25:                                             ; preds = %bb2
   unreachable
 }
 
-declare void @quux() #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind }
+declare void @quux()
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopDetect/error-block-referenced-from-scop.ll b/polly/test/ScopDetect/error-block-referenced-from-scop.ll
index ba271f34ea7b4..6c66f6df14af5 100644
--- a/polly/test/ScopDetect/error-block-referenced-from-scop.ll
+++ b/polly/test/ScopDetect/error-block-referenced-from-scop.ll
@@ -6,7 +6,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: nounwind uwtable
-define void @hoge() #0 {
+define void @hoge() {
 bb:
   br label %bb1
 
@@ -15,7 +15,7 @@ bb1:                                              ; preds = %bb
 
 bb2:                                              ; preds = %bb1
   %tmp = load i32, ptr undef, align 8, !tbaa !1
-  %tmp3 = tail call i32 @widget() #2
+  %tmp3 = tail call i32 @widget()
   br i1 false, label %bb4, label %bb5
 
 bb4:                                              ; preds = %bb2
@@ -33,11 +33,7 @@ bb8:                                              ; preds = %bb7, %bb5, %bb4
 }
 
 ; Function Attrs: inlinehint nounwind readonly uwtable
-declare i32 @widget() #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { inlinehint nounwind readonly uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind readonly }
+declare i32 @widget()
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopDetect/expand-region-correctly-2.ll b/polly/test/ScopDetect/expand-region-correctly-2.ll
index df35d05674f95..a5c9626d28361 100644
--- a/polly/test/ScopDetect/expand-region-correctly-2.ll
+++ b/polly/test/ScopDetect/expand-region-correctly-2.ll
@@ -5,7 +5,7 @@
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: nounwind uwtable
-define void @qtm_decompress() #0 {
+define void @qtm_decompress() {
 entry:
   br label %if.end.1631
 
@@ -45,8 +45,6 @@ cleanup.1785:                                     ; preds = %if.then.1659
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 250010) (llvm/trunk 250018)"}

diff  --git a/polly/test/ScopDetect/intrinsics_1.ll b/polly/test/ScopDetect/intrinsics_1.ll
index 0f9c70084a3da..58c9197f7f799 100644
--- a/polly/test/ScopDetect/intrinsics_1.ll
+++ b/polly/test/ScopDetect/intrinsics_1.ll
@@ -15,7 +15,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @jd(ptr noalias %A, ptr noalias %B) #0 {
+define void @jd(ptr noalias %A, ptr noalias %B) {
 entry:
   br label %for.cond
 
@@ -28,29 +28,29 @@ for.body:                                         ; preds = %for.cond
   %tmp = trunc i64 %indvars.iv to i32
   %conv = sitofp i32 %tmp to double
   %tmp1 = call double @llvm.sqrt.f64(double %conv)
-  %call = call double @__log10_finite(double %tmp1) #2
-  %call1 = call double @ceil(double %call) #2
+  %call = call double @__log10_finite(double %tmp1)
+  %call1 = call double @ceil(double %call)
   %tmp2 = trunc i64 %indvars.iv to i32
   %conv2 = sitofp i32 %tmp2 to double
-  %call3 = call double @__log2_finite(double %conv2) #2
-  %call4 = call double @floor(double %call3) #2
+  %call3 = call double @__log2_finite(double %conv2)
+  %call4 = call double @floor(double %call3)
   %tmp3 = call double @llvm.pow.f64(double %call1, double %call4)
   %conv5 = fptosi double %tmp3 to i32
   %arrayidx = getelementptr inbounds i32, ptr %A, i64 %indvars.iv
   store i32 %conv5, ptr %arrayidx, align 4
   %tmp4 = trunc i64 %indvars.iv to i32
   %conv6 = sitofp i32 %tmp4 to double
-  %call7 = call double @sin(double %conv6) #2
-  %call8 = call double @__log_finite(double %call7) #2
+  %call7 = call double @sin(double %conv6)
+  %call8 = call double @__log_finite(double %call7)
   %tmp5 = trunc i64 %indvars.iv to i32
   %conv9 = sitofp i32 %tmp5 to double
-  %call10 = call double @cos(double %conv9) #2
-  %call11 = call double @__exp2_finite(double %call10) #2
+  %call10 = call double @cos(double %conv9)
+  %call11 = call double @__exp2_finite(double %call10)
   %add = fadd fast double %call8, %call11
-  %call12 = call double @fabs(double %add) #2
+  %call12 = call double @fabs(double %add)
   %tmp6 = trunc i64 %indvars.iv to i32
   %conv13 = sitofp i32 %tmp6 to double
-  %call14 = call double @__exp_finite(double %conv13) #2
+  %call14 = call double @__exp_finite(double %conv13)
   %add15 = fadd fast double %call12, %call14
   %conv16 = fptrunc double %add15 to float
   %arrayidx18 = getelementptr inbounds float, ptr %B, i64 %indvars.iv
@@ -66,41 +66,37 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind readnone
-declare double @ceil(double) #1
+declare double @ceil(double)
 
 ; Function Attrs: nounwind readnone
-declare double @__log10_finite(double) #1
+declare double @__log10_finite(double)
 
 ; Function Attrs: nounwind readnone
-declare double @llvm.sqrt.f64(double) #2
+declare double @llvm.sqrt.f64(double)
 
 ; Function Attrs: nounwind readnone
-declare double @floor(double) #1
+declare double @floor(double)
 
 ; Function Attrs: nounwind readnone
-declare double @__log2_finite(double) #1
+declare double @__log2_finite(double)
 
 ; Function Attrs: nounwind readnone
-declare double @llvm.pow.f64(double, double) #2
+declare double @llvm.pow.f64(double, double)
 
 ; Function Attrs: nounwind readnone
-declare double @fabs(double) #1
+declare double @fabs(double)
 
 ; Function Attrs: nounwind readnone
-declare double @__log_finite(double) #1
+declare double @__log_finite(double)
 
 ; Function Attrs: nounwind readnone
-declare double @sin(double) #1
+declare double @sin(double)
 
 ; Function Attrs: nounwind readnone
-declare double @__exp2_finite(double) #1
+declare double @__exp2_finite(double)
 
 ; Function Attrs: nounwind readnone
-declare double @cos(double) #1
+declare double @cos(double)
 
 ; Function Attrs: nounwind readnone
-declare double @__exp_finite(double) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #2 = { nounwind readnone }
+declare double @__exp_finite(double)

diff  --git a/polly/test/ScopDetect/intrinsics_2.ll b/polly/test/ScopDetect/intrinsics_2.ll
index 1db9807cadb8d..f71016e6d04cd 100644
--- a/polly/test/ScopDetect/intrinsics_2.ll
+++ b/polly/test/ScopDetect/intrinsics_2.ll
@@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @A = common global [1024 x i32] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @jd() #0 {
+define void @jd() {
 entry:
   %tmp = alloca [1024 x i32], align 16
   br label %for.cond
@@ -31,7 +31,7 @@ for.cond:                                         ; preds = %for.inc11, %entry
   br i1 %exitcond5, label %for.body, label %for.end13
 
 for.body:                                         ; preds = %for.cond
-  call void @llvm.lifetime.start(i64 4096, ptr %tmp) #1
+  call void @llvm.lifetime.start(i64 4096, ptr %tmp)
   br label %for.cond2
 
 for.cond2:                                        ; preds = %for.inc, %for.body
@@ -62,7 +62,7 @@ for.end:                                          ; preds = %for.cond2
 
 for.inc11:                                        ; preds = %for.end
   %indvars.iv.next4 = add nuw nsw i64 %indvars.iv3, 1
-  call void @llvm.lifetime.end(i64 4096, ptr %tmp) #1
+  call void @llvm.lifetime.end(i64 4096, ptr %tmp)
   br label %for.cond
 
 for.end13:                                        ; preds = %for.cond
@@ -70,10 +70,7 @@ for.end13:                                        ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, ptr nocapture) #1
+declare void @llvm.lifetime.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, ptr nocapture) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #1 = { nounwind }
+declare void @llvm.lifetime.end(i64, ptr nocapture)

diff  --git a/polly/test/ScopDetect/intrinsics_3.ll b/polly/test/ScopDetect/intrinsics_3.ll
index a230d0aa831c5..579d5bd481d44 100644
--- a/polly/test/ScopDetect/intrinsics_3.ll
+++ b/polly/test/ScopDetect/intrinsics_3.ll
@@ -20,7 +20,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @A = common global [1024 x i32] zeroinitializer, align 16
 
 ; Function Attrs: nounwind uwtable
-define void @jd() #0 {
+define void @jd() {
 entry:
   %tmp = alloca [1024 x i32], align 16
   br label %for.cond
@@ -31,7 +31,7 @@ for.cond:                                         ; preds = %for.inc11, %entry
   br i1 %exitcond5, label %for.body, label %for.end13
 
 for.body:                                         ; preds = %for.cond
-  %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A) #1
+  %lis = call ptr @llvm.invariant.start(i64 4096, ptr @A)
   br label %for.cond2
 
 for.cond2:                                        ; preds = %for.inc, %for.body
@@ -60,7 +60,7 @@ for.end:                                          ; preds = %for.cond2
   %arrayidx8 = getelementptr inbounds [1024 x i32], ptr %tmp, i64 0, i64 %indvars.iv3
   %tmp8 = load i32, ptr %arrayidx8, align 4
   %arrayidx10 = getelementptr inbounds [1024 x i32], ptr @A, i64 0, i64 %indvars.iv3
-  call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A) #1
+  call void @llvm.invariant.end(ptr %lis, i64 4096, ptr @A)
   store i32 %tmp8, ptr %arrayidx10, align 4
   br label %for.inc11
 
@@ -73,19 +73,16 @@ for.end13:                                        ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind
-declare void @llvm.donothing() #1
+declare void @llvm.donothing()
 
 ; Function Attrs: nounwind
-declare void @llvm.assume(i1) #1
+declare void @llvm.assume(i1)
 
 ; Function Attrs: nounwind
-declare i1 @llvm.expect.i1(i1, i1) #1
+declare i1 @llvm.expect.i1(i1, i1)
 
 ; Function Attrs: nounwind
-declare ptr @llvm.invariant.start(i64, ptr nocapture) #1
+declare ptr @llvm.invariant.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind
-declare void @llvm.invariant.end(ptr, i64, ptr nocapture) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="true" "no-nans-fp-math"="true" "stack-protector-buffer-size"="8" "unsafe-fp-math"="true" "use-soft-float"="false" }
-attributes #1 = { nounwind }
+declare void @llvm.invariant.end(ptr, i64, ptr nocapture)

diff  --git a/polly/test/ScopDetect/report-scop-location.ll b/polly/test/ScopDetect/report-scop-location.ll
index a99a2ef2b4841..5e4c38db5e53c 100644
--- a/polly/test/ScopDetect/report-scop-location.ll
+++ b/polly/test/ScopDetect/report-scop-location.ll
@@ -2,7 +2,7 @@
 target datalayout = "e-i64:64-f80:128-s:64-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @foo(ptr %A) #0 !dbg !4 {
+define void @foo(ptr %A) !dbg !4 {
 entry:
   br label %entry.split
 
@@ -28,7 +28,7 @@ for.end:                                          ; preds = %for.body
 ; CHECK: test.c:3: End of scop
 
 ; Function Attrs: nounwind uwtable
-define void @bar(ptr %A) #0 !dbg !7 {
+define void @bar(ptr %A) !dbg !7 {
 entry:
   br label %entry.split
 
@@ -53,8 +53,6 @@ for.end:                                          ; preds = %for.body
 ; CHECK: test.c:9: Start of scop
 ; CHECK: test.c:13: End of scop
 
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!8, !9}
 !llvm.ident = !{!10}
@@ -77,4 +75,3 @@ attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"=
 !16 = distinct !DILexicalBlock(line: 9, column: 0, file: !1, scope: !7)
 !17 = !DILocation(line: 13, scope: !16)
 !18 = !DILocation(line: 14, scope: !7)
-

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll
index d22c3b6d27c3d..30e5fb9fdeba8 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportIrreducibleRegion.ll
@@ -19,9 +19,8 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 ; CHECK-NEXT: remark: ReportIrreducibleRegion.c:9:4: Irreducible region encountered in control flow.
 ; CHECK-NEXT: remark: ReportIrreducibleRegion.c:9:4: Invalid Scop candidate ends here.
 
-
 ; Function Attrs: nounwind uwtable
-define void @foo(i32 %a, i32 %b) #0 !dbg !4 {
+define void @foo(i32 %a, i32 %b) !dbg !4 {
 entry:
   %a.addr = alloca i32, align 4
   %b.addr = alloca i32, align 4
@@ -66,10 +65,7 @@ if.end6:                                          ; preds = %if.end5, %entry
 }
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!8, !9}

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll b/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
index cb913000a9933..a96b64e4e0d54 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportLoopBound-01.ll
@@ -79,9 +79,6 @@ declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
 
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
-
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!10, !11}
 !llvm.ident = !{!12}

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll b/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll
index 3743bfae9fcaf..6156efaea1909 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportLoopHasNoExit.ll
@@ -19,12 +19,10 @@
 
 ; CHECK: remark: ReportLoopHasNoExit.c:7:7: Loop cannot be handled because it has no exit.
 
-
-
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @func(i32 %param0, i32 %N, ptr %A) #0 !dbg !6 {
+define void @func(i32 %param0, i32 %N, ptr %A) !dbg !6 {
 entry:
   %param0.addr = alloca i32, align 4
   %N.addr = alloca i32, align 4
@@ -80,10 +78,7 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!3, !4}

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll b/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
index 832045f089d64..13ac9d5ace2d3 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportNonAffineAccess-01.ll
@@ -5,7 +5,6 @@
 ;     A[i*i] = 0;
 ; }
 
-
 ; CHECK: remark: ReportNonAffineAccess-01.c:2:7: The following errors keep this region from being a Scop.
 ; CHECK: remark: ReportNonAffineAccess-01.c:3:5: The array subscript of "A" is not affine
 ; CHECK: remark: ReportNonAffineAccess-01.c:3:5: Invalid Scop candidate ends here.
@@ -40,9 +39,6 @@ declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
 
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
-
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!10, !11}
 !llvm.ident = !{!12}

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll b/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll
index b951487d61971..93e9e8b14038b 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportUnprofitable.ll
@@ -74,9 +74,8 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 ; YAML: Args:
 ; YAML:   - String:          Invalid Scop candidate ends here.
 
-
 ; Function Attrs: nounwind uwtable
-define void @onlyWrite(ptr %A) #0 !dbg !4 {
+define void @onlyWrite(ptr %A) !dbg !4 {
 entry:
   call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !14, metadata !15), !dbg !16
   call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !17, metadata !15), !dbg !20
@@ -102,10 +101,10 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
+declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
 ; Function Attrs: nounwind uwtable
-define void @onlyRead(ptr %A) #0 !dbg !10 {
+define void @onlyRead(ptr %A) !dbg !10 {
 entry:
   call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !29, metadata !15), !dbg !30
   call void @llvm.dbg.value(metadata i64 0, i64 0, metadata !31, metadata !15), !dbg !33
@@ -131,10 +130,7 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!11, !12}

diff  --git a/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll b/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
index c2efd6165a26b..5f296fae9532b 100644
--- a/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
+++ b/polly/test/ScopDetectionDiagnostics/ReportVariantBasePtr-01.ll
@@ -21,7 +21,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 %struct.b = type { ptr }
 
-define void @a(ptr nocapture readonly %A) #0 !dbg !4 {
+define void @a(ptr nocapture readonly %A) !dbg !4 {
 entry:
   br label %entry.split
 
@@ -57,10 +57,7 @@ for.end:                                          ; preds = %for.body
   ret void, !dbg !34
 }
 
-declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!20, !21}

diff  --git a/polly/test/ScopInfo/BoundChecks/single-loop.ll b/polly/test/ScopInfo/BoundChecks/single-loop.ll
index 10a0a58f381d2..0b69beaaf3f9c 100644
--- a/polly/test/ScopInfo/BoundChecks/single-loop.ll
+++ b/polly/test/ScopInfo/BoundChecks/single-loop.ll
@@ -38,7 +38,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @foo(i64 %n, ptr %A) #0 {
+define void @foo(i64 %n, ptr %A) {
 entry:
   br label %for.cond
 
@@ -51,7 +51,7 @@ for.body:                                         ; preds = %for.cond
   br i1 false, label %if.then, label %if.end
 
 if.then:                                          ; preds = %for.body
-  call void (...) @exception() #2
+  call void (...) @exception()
   unreachable
 
 if.end:                                           ; preds = %for.body
@@ -59,7 +59,7 @@ if.end:                                           ; preds = %for.body
   br i1 %cmp2, label %if.then.3, label %if.end.4
 
 if.then.3:                                        ; preds = %if.end
-  call void (...) @exception() #2
+  call void (...) @exception()
   unreachable
 
 if.end.4:                                         ; preds = %if.end
@@ -79,11 +79,7 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: noreturn
-declare void @exception(...) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noreturn "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { noreturn nounwind }
+declare void @exception(...)
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopInfo/BoundChecks/two-loops.ll b/polly/test/ScopInfo/BoundChecks/two-loops.ll
index c85ac5b4ba8fd..f2ba17d33c0ea 100644
--- a/polly/test/ScopInfo/BoundChecks/two-loops.ll
+++ b/polly/test/ScopInfo/BoundChecks/two-loops.ll
@@ -35,7 +35,7 @@
 ; AST:     {  /* original code */ }
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-define void @foo(i64 %n, ptr %A) #0 {
+define void @foo(i64 %n, ptr %A) {
 entry:
   br label %for.cond
 
@@ -56,7 +56,7 @@ for.body.3:                                       ; preds = %for.cond.1
   br i1 false, label %if.then, label %if.end
 
 if.then:                                          ; preds = %for.body.3
-  call void (...) @exception() #2
+  call void (...) @exception()
   unreachable
 
 if.end:                                           ; preds = %for.body.3
@@ -64,7 +64,7 @@ if.end:                                           ; preds = %for.body.3
   br i1 %cmp5, label %if.then.6, label %if.end.7
 
 if.then.6:                                        ; preds = %if.end
-  call void (...) @exception() #2
+  call void (...) @exception()
   unreachable
 
 if.end.7:                                         ; preds = %if.end
@@ -90,11 +90,7 @@ for.end.10:                                       ; preds = %for.cond
   ret void
 }
 
-declare void @exception(...) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { noreturn "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { noreturn nounwind }
+declare void @exception(...)
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopInfo/complex-expression.ll b/polly/test/ScopInfo/complex-expression.ll
index 6a6dde62d1ae5..4a2a1d2a64a6d 100644
--- a/polly/test/ScopInfo/complex-expression.ll
+++ b/polly/test/ScopInfo/complex-expression.ll
@@ -13,7 +13,7 @@
 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
 
 ; Function Attrs: norecurse nounwind
-define i32 @foo(ptr nocapture readonly %src1, ptr nocapture readonly %src2, ptr nocapture %score, ptr nocapture %max, i32 %n) #0 {
+define i32 @foo(ptr nocapture readonly %src1, ptr nocapture readonly %src2, ptr nocapture %score, ptr nocapture %max, i32 %n) {
 entry:
   %cmp33 = icmp sgt i32 %n, 0
   br i1 %cmp33, label %for.body.preheader, label %for.body7.preheader
@@ -129,8 +129,6 @@ cleanup:                                          ; preds = %for.body7.preheader
   ret i32 %retval.0
 }
 
-attributes #0 = { norecurse nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="arm7tdmi" "target-features"="+strict-align" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.module.flags = !{!0, !1}
 !llvm.ident = !{!2}
 

diff  --git a/polly/test/ScopInfo/do-not-model-error-block-accesses.ll b/polly/test/ScopInfo/do-not-model-error-block-accesses.ll
index baa423f407802..a3ca59563ab1f 100644
--- a/polly/test/ScopInfo/do-not-model-error-block-accesses.ll
+++ b/polly/test/ScopInfo/do-not-model-error-block-accesses.ll
@@ -6,7 +6,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @FORMAT3_4() #0 {
+define void @FORMAT3_4() {
 entry:
   br label %entry.split
 
@@ -14,7 +14,7 @@ entry.split:                                      ; preds = %entry
   br i1 false, label %if.end.38, label %if.else
 
 if.else:                                          ; preds = %entry.split
-  call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef) #2
+  call void (i32, i32, ptr, ...) @BYTES_TO_BITS(i32 undef, i32 1, ptr undef)
   %0 = load i32, ptr null, align 4
   br label %if.end.38
 
@@ -22,11 +22,7 @@ if.end.38:                                        ; preds = %if.else, %entry.spl
   unreachable
 }
 
-declare void @BYTES_TO_BITS(...) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cmov,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+hle,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+rtm,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+xsave,+xsaveopt,-adx,-avx512bw,-avx512cd,-avx512dq,-avx512er,-avx512f,-avx512pf,-avx512vl,-fma4,-prfchw,-rdseed,-sha,-sse4a,-tbm,-xop,-xsavec,-xsaves" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind }
+declare void @BYTES_TO_BITS(...)
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopInfo/early_exit_for_complex_domains.ll b/polly/test/ScopInfo/early_exit_for_complex_domains.ll
index eed19b3214a73..9a1edcbfb7796 100644
--- a/polly/test/ScopInfo/early_exit_for_complex_domains.ll
+++ b/polly/test/ScopInfo/early_exit_for_complex_domains.ll
@@ -7,7 +7,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 %struct.regnode_charclass_class.2.42.654.690.726.870.978.1770.1806.1842.2166.2274.2382.2598.2814.3030.3064 = type { i8, i8, i16, i32, [32 x i8], [4 x i8] }
 
 ; Function Attrs: nounwind uwtable
-define void @S_cl_or(ptr %cl, ptr %or_with) #0 {
+define void @S_cl_or(ptr %cl, ptr %or_with) {
 entry:
   %0 = load i8, ptr %or_with, align 4, !tbaa !1
   %conv = zext i8 %0 to i32
@@ -37,8 +37,6 @@ if.end91:                                         ; preds = %for.body71, %for.bo
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0"}

diff  --git a/polly/test/ScopInfo/expensive-boundary-context.ll b/polly/test/ScopInfo/expensive-boundary-context.ll
index 1a8858d8fce20..95212f83acdca 100644
--- a/polly/test/ScopInfo/expensive-boundary-context.ll
+++ b/polly/test/ScopInfo/expensive-boundary-context.ll
@@ -16,7 +16,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 %struct.foo.1 = type { [3 x i32], [3 x i32], i32, i32, [4 x i32], [4 x i32] }
 
 ; Function Attrs: nounwind uwtable
-define void @hoge() #0 {
+define void @hoge() {
 bb:
   %tmp52 = alloca ptr, align 8
   %tmp53 = alloca ptr, align 8
@@ -250,8 +250,6 @@ bb245:                                            ; preds = %bb244, %bb232
   unreachable
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0, !0}
 
 !0 = !{!"clang version 3.8.0 (trunk 252261) (llvm/trunk 252271)"}

diff  --git a/polly/test/ScopInfo/intrinsics.ll b/polly/test/ScopInfo/intrinsics.ll
index c5bbacbe6d8c2..e6d9e733e35bf 100644
--- a/polly/test/ScopInfo/intrinsics.ll
+++ b/polly/test/ScopInfo/intrinsics.ll
@@ -14,7 +14,7 @@
 ;
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-define void @fun() #0 {
+define void @fun() {
 entry:
   %A = alloca [1024 x i32], align 16
   br label %for.cond
@@ -40,7 +40,4 @@ for.end:                                          ; preds = %for.cond
 }
 
 ; Function Attrs: nounwind readnone
-declare void @llvm.donothing() #1
-
-attributes #0 = { noinline nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
+declare void @llvm.donothing()

diff  --git a/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll b/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll
index 6027975b563b7..e32748a4bbb57 100644
--- a/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll
+++ b/polly/test/ScopInfo/long-sequence-of-error-blocks-2.ll
@@ -13,13 +13,13 @@ target triple = "x86_64-unknown-linux-gnu"
 @global2 = external unnamed_addr constant [79 x i8], align 1
 @global3 = external unnamed_addr constant [57 x i8], align 1
 
-declare void @widget() #0
+declare void @widget()
 
 ; Function Attrs: nounwind
-declare void @quux(ptr, i64, ptr, ...) #1
+declare void @quux(ptr, i64, ptr, ...)
 
 ; Function Attrs: nounwind uwtable
-define void @hoge(ptr %A) #2 {
+define void @hoge(ptr %A) {
 bb:
   br label %bb15
 
@@ -39,7 +39,7 @@ bb19:                                             ; preds = %bb15
   br i1 %tmp22, label %bb24, label %bb23
 
 bb23:                                             ; preds = %bb19
-  call void @widget() #3
+  call void @widget()
   br label %bb24
 
 bb24:                                             ; preds = %bb23, %bb19, %bb15
@@ -57,7 +57,7 @@ bb29:                                             ; preds = %bb24
   br i1 %tmp32, label %bb33, label %bb34
 
 bb33:                                             ; preds = %bb29
-  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144) #3
+  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144)
   br label %bb34
 
 bb34:                                             ; preds = %bb33, %bb29, %bb24
@@ -84,7 +84,7 @@ bb43:                                             ; preds = %bb39
   br i1 %tmp47, label %bb48, label %bb49
 
 bb48:                                             ; preds = %bb43
-  call void @widget() #3
+  call void @widget()
   br label %bb49
 
 bb49:                                             ; preds = %bb48, %bb43, %bb39, %bb34
@@ -103,7 +103,7 @@ bb54:                                             ; preds = %bb49
   br i1 %tmp57, label %bb58, label %bb59
 
 bb58:                                             ; preds = %bb54
-  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global3) #3
+  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global3)
   br label %bb59
 
 bb59:                                             ; preds = %bb58, %bb54, %bb49
@@ -121,11 +121,6 @@ bb65:                                             ; preds = %bb64, %bb59
   ret void
 }
 
-attributes #0 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { nounwind }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 252261) (llvm/trunk 252271)"}

diff  --git a/polly/test/ScopInfo/long-sequence-of-error-blocks.ll b/polly/test/ScopInfo/long-sequence-of-error-blocks.ll
index 4ef5ef09c44b7..b32b87b5c3f3a 100644
--- a/polly/test/ScopInfo/long-sequence-of-error-blocks.ll
+++ b/polly/test/ScopInfo/long-sequence-of-error-blocks.ll
@@ -51,13 +51,13 @@ target triple = "x86_64-unknown-linux-gnu"
 @global2 = external unnamed_addr constant [79 x i8], align 1
 @global3 = external unnamed_addr constant [57 x i8], align 1
 
-declare void @widget() #0
+declare void @widget()
 
 ; Function Attrs: nounwind
-declare void @quux(ptr, i64, ptr, ...) #1
+declare void @quux(ptr, i64, ptr, ...)
 
 ; Function Attrs: nounwind uwtable
-define void @hoge(ptr %A) #2 {
+define void @hoge(ptr %A) {
 bb:
   br label %bb15
 
@@ -77,7 +77,7 @@ bb19:                                             ; preds = %bb15
   br i1 %tmp22, label %bb24, label %bb23
 
 bb23:                                             ; preds = %bb19
-  call void @widget() #3
+  call void @widget()
   br label %bb24
 
 bb24:                                             ; preds = %bb23, %bb19, %bb15
@@ -95,18 +95,13 @@ bb29:                                             ; preds = %bb24
   br i1 %tmp32, label %bb33, label %bb34
 
 bb33:                                             ; preds = %bb29
-  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144) #3
+  call void (ptr, i64, ptr, ...) @quux(ptr @global, i64 300, ptr @global2, i32 144)
   br label %bb34
 
 bb34:                                             ; preds = %bb33, %bb29, %bb24
   ret void
 }
 
-attributes #0 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #2 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { nounwind }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.8.0 (trunk 252261) (llvm/trunk 252271)"}

diff  --git a/polly/test/ScopInfo/memcpy-raw-source.ll b/polly/test/ScopInfo/memcpy-raw-source.ll
index d9024cd27346f..6c45b0d41b76b 100644
--- a/polly/test/ScopInfo/memcpy-raw-source.ll
+++ b/polly/test/ScopInfo/memcpy-raw-source.ll
@@ -8,10 +8,10 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @tonemasks = external global [17 x [6 x [56 x float]]], align 16
 
 ; Function Attrs: argmemonly nounwind
-declare void @llvm.memcpy.p0.p0.i64(ptr nocapture writeonly, ptr nocapture readonly, i64, i32, i1) #0
+declare void @llvm.memcpy.p0.p0.i64(ptr nocapture writeonly, ptr nocapture readonly, i64, i32, i1)
 
 ; Function Attrs: nounwind uwtable
-define void @setup_tone_curves() #1 {
+define void @setup_tone_curves() {
 entry:
   %workc = alloca [17 x [8 x [56 x float]]], align 16
   br label %for.cond7.preheader
@@ -46,9 +46,6 @@ for.inc104:                                       ; preds = %for.body74
   ret void
 }
 
-attributes #0 = { argmemonly nounwind }
-attributes #1 = { nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 4.0.0 (trunk 285057) (llvm/trunk 285063)"}

diff  --git a/polly/test/ScopInfo/mismatching-array-dimensions.ll b/polly/test/ScopInfo/mismatching-array-dimensions.ll
index ed1e28cbee6ef..f825cbff1ec56 100644
--- a/polly/test/ScopInfo/mismatching-array-dimensions.ll
+++ b/polly/test/ScopInfo/mismatching-array-dimensions.ll
@@ -6,7 +6,7 @@ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-apple-macosx10.9.0"
 
 ; Function Attrs: nounwind ssp uwtable
-define void @hoge(ptr %arg, ptr %arg5, i32 %arg6) #0 {
+define void @hoge(ptr %arg, ptr %arg5, i32 %arg6) {
 bb:
   br i1 undef, label %bb7, label %bb25
 
@@ -37,8 +37,6 @@ bb25:                                             ; preds = %bb21, %bb
   ret void
 }
 
-attributes #0 = { nounwind ssp uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="core2" "target-features"="+cx16,+fxsr,+mmx,+sse,+sse2,+sse3,+ssse3" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.module.flags = !{!0, !1, !2}
 !llvm.ident = !{!3}
 

diff  --git a/polly/test/ScopInfo/multidim_srem.ll b/polly/test/ScopInfo/multidim_srem.ll
index c965e2c86e2ba..88c8c6af648e0 100644
--- a/polly/test/ScopInfo/multidim_srem.ll
+++ b/polly/test/ScopInfo/multidim_srem.ll
@@ -19,11 +19,9 @@
 ; CHECK-NEXT:             [n] -> { Stmt_for_body_8[i0, i1, i2] -> MemRef_A[1, i1, i2] : (1 + i0) mod 2 = 0; Stmt_for_body_8[i0, i1, i2] -> MemRef_A[0, i1, i2] : (i0) mod 2 = 0 };
 ; CHECK-NEXT: }
 
-
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
-
-define void @foo(i64 %n, ptr %A) #0 {
+define void @foo(i64 %n, ptr %A) {
 entry:
   br label %entry.split
 
@@ -83,13 +81,10 @@ for.end.16:                                       ; preds = %for.inc.14
 }
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.start(i64, ptr nocapture) #1
+declare void @llvm.lifetime.start(i64, ptr nocapture)
 
 ; Function Attrs: nounwind
-declare void @llvm.lifetime.end(i64, ptr nocapture) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind }
+declare void @llvm.lifetime.end(i64, ptr nocapture)
 
 !llvm.ident = !{!0}
 

diff  --git a/polly/test/ScopInfo/remarks.ll b/polly/test/ScopInfo/remarks.ll
index 2c173a31c46e9..10cc57aa27a14 100644
--- a/polly/test/ScopInfo/remarks.ll
+++ b/polly/test/ScopInfo/remarks.ll
@@ -41,7 +41,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 @.str = private unnamed_addr constant [8 x i8] c"Printf!\00", align 1
 
-define void @valid(ptr %A, ptr %B, i32 %N, i32 %M, ptr %C, i32 %Debug) #0 !dbg !4 {
+define void @valid(ptr %A, ptr %B, i32 %N, i32 %M, ptr %C, i32 %Debug) !dbg !4 {
 entry:
   call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !23, metadata !24), !dbg !25
   call void @llvm.dbg.value(metadata ptr %B, i64 0, metadata !26, metadata !24), !dbg !27
@@ -105,7 +105,7 @@ for.end:                                          ; preds = %for.cond.3
   br i1 %tobool, label %if.end.18, label %if.then.17, !dbg !72
 
 if.then.17:                                       ; preds = %for.end
-  %call = call i32 (ptr, ...) @printf(ptr nonnull @.str) #3, !dbg !73
+  %call = call i32 (ptr, ...) @printf(ptr nonnull @.str), !dbg !73
   br label %if.end.18, !dbg !73
 
 if.end.18:                                        ; preds = %for.end, %if.then.17
@@ -120,11 +120,11 @@ for.end.21:                                       ; preds = %for.cond
   ret void, !dbg !76
 }
 
-declare void @llvm.dbg.declare(metadata, metadata, metadata) #1
+declare void @llvm.dbg.declare(metadata, metadata, metadata)
 
-declare i32 @printf(ptr, ...) #2
+declare i32 @printf(ptr, ...)
 
-define void @invalid0(ptr %A) #0 !dbg !13 {
+define void @invalid0(ptr %A) !dbg !13 {
 entry:
   call void @llvm.dbg.value(metadata ptr %A, i64 0, metadata !77, metadata !24), !dbg !78
   call void @llvm.dbg.value(metadata i32 0, i64 0, metadata !79, metadata !24), !dbg !81
@@ -173,12 +173,7 @@ for.end.7:                                        ; preds = %for.cond
   ret void, !dbg !105
 }
 
-declare void @llvm.dbg.value(metadata, i64, metadata, metadata) #1
-
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #1 = { nounwind readnone }
-attributes #2 = { "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-attributes #3 = { nounwind }
+declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
 
 !llvm.dbg.cu = !{!0}
 !llvm.module.flags = !{!20, !21}

diff  --git a/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll b/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll
index 55192b5bc2c97..fa0c81fe9a48e 100644
--- a/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll
+++ b/polly/test/ScopInfo/scev-div-with-evaluatable-divisor.ll
@@ -9,7 +9,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-unknown-linux-gnu"
 
 ; Function Attrs: nounwind uwtable
-define void @cfft2(i32 %n, ptr %A) local_unnamed_addr #0 {
+define void @cfft2(i32 %n, ptr %A) local_unnamed_addr {
 entry:
   br i1 true, label %for.body.lr.ph, label %for.end
 
@@ -49,8 +49,6 @@ for.end:                                          ; preds = %for.inc, %entry
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 3.9.0 (trunk 273249) (llvm/trunk 273255)"}

diff  --git a/polly/test/ScopInfo/unnamed_stmts.ll b/polly/test/ScopInfo/unnamed_stmts.ll
index 5a189454471f4..163170ce74895 100644
--- a/polly/test/ScopInfo/unnamed_stmts.ll
+++ b/polly/test/ScopInfo/unnamed_stmts.ll
@@ -48,7 +48,7 @@
 target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 
 ; Function Attrs: nounwind uwtable
-define void @vec3(i64 %n, ptr, ptr) #0 {
+define void @vec3(i64 %n, ptr, ptr) {
   br label %.split
 
 .split:                                           ; preds = %0
@@ -141,8 +141,6 @@ define void @vec3(i64 %n, ptr, ptr) #0 {
   ret void
 }
 
-attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="all" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+sse,+sse2" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"Ubuntu clang version 3.7.1-3ubuntu4 (tags/RELEASE_371/final) (based on LLVM 3.7.1)"}

diff  --git a/polly/test/Simplify/phi_in_regionstmt.ll b/polly/test/Simplify/phi_in_regionstmt.ll
index 76efd484f547f..2bb05738955a3 100644
--- a/polly/test/Simplify/phi_in_regionstmt.ll
+++ b/polly/test/Simplify/phi_in_regionstmt.ll
@@ -14,7 +14,7 @@ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
 @qmatrix = external local_unnamed_addr global [8 x ptr], align 16
 
 ; Function Attrs: nounwind uwtable
-define void @AssignQuantParam(ptr %pps) local_unnamed_addr #0 {
+define void @AssignQuantParam(ptr %pps) local_unnamed_addr {
 entry:
   br label %entry.split
 
@@ -46,8 +46,6 @@ if.else121.us.7:                                  ; preds = %if.else135.us.6, %i
   br label %if.end161
 }
 
-attributes #0 = { nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "frame-pointer"="none" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+fxsr,+mmx,+sse,+sse2,+x87" "unsafe-fp-math"="false" "use-soft-float"="false" }
-
 !llvm.ident = !{!0}
 
 !0 = !{!"clang version 6.0.0 (trunk 308961)"}
@@ -59,5 +57,4 @@ attributes #0 = { nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="fals
 !6 = !{!"any pointer", !3, i64 0}
 !7 = !{!6, !6, i64 0}
 
-
 ; CHECK: SCoP could not be simplified


        


More information about the llvm-commits mailing list