[PATCH] D85384: [X86] Add basic support for -mtune command line option in clang

Eric Christopher via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 18 22:17:01 PDT 2020


This would be because at that point the default cpu was that and it
probably had something to do with fallbacks.

At this point it can be changed I imagine to whatever makes sense.

On Wed, Aug 19, 2020, 1:12 AM Craig Topper via Phabricator <
reviews at reviews.llvm.org> wrote:

> craig.topper added a subscriber: ddunbar.
> craig.topper added a comment.
>
> In D85384#2225434 <https://reviews.llvm.org/D85384#2225434>, @phosek
> wrote:
>
> > This seems to have broken our Mac builders with the following error:
> >
> >   -- Testing: 25226 tests, 24 workers --
> >   Testing:  0.. 10.. 20.
> >   FAIL: Clang :: Frontend/ast-main.c (6834 of 25226)
> >   ******************** TEST 'Clang :: Frontend/ast-main.c' FAILED
> ********************
> >   Script:
> >   --
> >   : 'RUN: at line 1';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -emit-llvm -S -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp1.ll
> -x c - < /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.c
> >   : 'RUN: at line 2';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -emit-ast -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp.ast
> /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.c
> >   : 'RUN: at line 3';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -emit-llvm -S -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp2.ll
> -x ast - <
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp.ast
> >   : 'RUN: at line 4';   diff
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp1.ll
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.c.tmp2.ll
> >   --
> >   Exit Code: 1
> >
> >   Command Output (stdout):
> >   --
> >   14c14
> >   < attributes #0 = { noinline nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "tune-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   ---
> >   > attributes #0 = { noinline nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "unsafe-fp-math"="false" "use-soft-float"="false" }
> >
> >   --
> >
> >   ********************
> >   Testing:  0.. 10.. 20.
> >   FAIL: Clang :: Frontend/ast-main.cpp (6835 of 25226)
> >   ******************** TEST 'Clang :: Frontend/ast-main.cpp' FAILED
> ********************
> >   Script:
> >   --
> >   : 'RUN: at line 1';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -emit-llvm -S -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp1.ll
> -x c++ - < /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.cpp
> >   : 'RUN: at line 2';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -fno-delayed-template-parsing
> -emit-ast -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp.ast
> /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.cpp
> >   : 'RUN: at line 3';   env SDKROOT="/"
> /b/s/w/ir/k/staging/llvm_build/bin/clang -emit-llvm -S -o
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp2.ll
> -x ast - <
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp.ast
> >   : 'RUN: at line 4';   diff
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp1.ll
> /b/s/w/ir/k/staging/llvm_build/tools/clang/test/Frontend/Output/ast-main.cpp.tmp2.ll
> >   --
> >   Exit Code: 1
> >
> >   Command Output (stdout):
> >   --
> >   37,39c37,39
> >   < attributes #0 = { noinline optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "tune-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   < attributes #1 = { noinline nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "tune-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   < attributes #2 = { noinline norecurse nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "tune-cpu"="core2" "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   ---
> >   > attributes #0 = { noinline optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   > attributes #1 = { noinline nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "unsafe-fp-math"="false" "use-soft-float"="false" }
> >   > attributes #2 = { noinline norecurse nounwind optnone ssp uwtable
> "correctly-rounded-divide-sqrt-fp-math"="false"
> "disable-tail-calls"="false" "frame-pointer"="all"
> "less-precise-fpmad"="false" "min-legal-vector-width"="0"
> "no-infs-fp-math"="false" "no-jump-tables"="false"
> "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false"
> "no-trapping-math"="true" "stack-protector-buffer-size"="8"
> "target-cpu"="penryn"
> "target-features"="+cx16,+cx8,+fxsr,+mmx,+sahf,+sse,+sse2,+sse3,+sse4.1,+ssse3,+x87"
> "unsafe-fp-math"="false" "use-soft-float"="false" }
> >
> >   --
> >   Command Output (stderr):
> >   --
> >   <stdin>:14:1: warning: non-void function does not return a value
> [-Wreturn-type]
> >   }
> >   ^
> >   <stdin>:17:14: note: in instantiation of member function 'S<int>::mf'
> requested here
> >       S<int>().mf();
> >                ^
> >   1 warning generated.
> >   /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.cpp:14:1:
> warning: non-void function does not return a value [-Wreturn-type]
> >   }
> >   ^
> >   /b/s/w/ir/k/llvm-project/clang/test/Frontend/ast-main.cpp:17:14: note:
> in instantiation of member function 'S<int>::mf' requested here
> >       S<int>().mf();
> >                ^
> >   1 warning generated.
> >
> >   --
> >
> >   ********************
> >   Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
> >   ********************
> >   Failed Tests (2):
> >     Clang :: Frontend/ast-main.c
> >     Clang :: Frontend/ast-main.cpp
> >
> >
> >   Testing Time: 225.68s
> >     Unsupported      :   564
> >     Passed           : 24636
> >     Expectedly Failed:    24
> >     Failed           :     2
> >
> > Specifically, the `tune-cpu` attribute seems to be missing on Darwin.
> Would it be possible to take a look?
>
> I suspect this is somehow related to the very old code in
> lib/Driver/ToolChains/Darwin.cpp that forces a -mtune=core2 into the
> command line. But I'm not clear yet why that code is there. @ddunbar looks
> like you added that code in 2009? Can you shed any light on what its for?
>
>
> Repository:
>   rG LLVM Github Monorepo
>
> CHANGES SINCE LAST ACTION
>   https://reviews.llvm.org/D85384/new/
>
> https://reviews.llvm.org/D85384
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200819/e73727fa/attachment.html>


More information about the llvm-commits mailing list