r180206 - [driver] Put -fvectorize under the -Ofast umbrella flag.

Robinson, Paul Paul_Robinson at playstation.sony.com
Thu Apr 25 13:07:47 PDT 2013


Should this (and the other -Ofast handling changes)
get a release note?
--paulr

> -----Original Message-----
> From: cfe-commits-bounces at cs.uiuc.edu [mailto:cfe-commits-
> bounces at cs.uiuc.edu] On Behalf Of Chad Rosier
> Sent: Wednesday, April 24, 2013 11:30 AM
> To: cfe-commits at cs.uiuc.edu
> Subject: r180206 - [driver] Put -fvectorize under the -Ofast umbrella
> flag.
> 
> Author: mcrosier
> Date: Wed Apr 24 13:29:59 2013
> New Revision: 180206
> 
> URL: http://llvm.org/viewvc/llvm-project?rev=180206&view=rev
> Log:
> [driver] Put -fvectorize under the -Ofast umbrella flag.
> Part of rdar://13622687
> 
> Modified:
>     cfe/trunk/lib/Driver/Tools.cpp
>     cfe/trunk/test/Driver/Ofast.c
> 
> Modified: cfe/trunk/lib/Driver/Tools.cpp
> URL: http://llvm.org/viewvc/llvm-
> project/cfe/trunk/lib/Driver/Tools.cpp?rev=180206&r1=180205&r2=180206&vi
> ew=diff
> ========================================================================
> ======
> --- cfe/trunk/lib/Driver/Tools.cpp (original)
> +++ cfe/trunk/lib/Driver/Tools.cpp Wed Apr 24 13:29:59 2013
> @@ -3284,8 +3284,13 @@ void Clang::ConstructJob(Compilation &C,
>                     false))
>      CmdArgs.push_back("-fasm-blocks");
> 
> +  // If -Ofast is the optimization level, then -fvectorize should be
> enabled.
> +  // This alias option is being used to simplify the hasFlag logic.
> +  OptSpecifier VectorizeAliasOption = OFastEnabled ? options::OPT_Ofast
> :
> +    options::OPT_fvectorize;
> +
>    // -fvectorize is default.
> -  if (Args.hasFlag(options::OPT_fvectorize,
> +  if (Args.hasFlag(options::OPT_fvectorize, VectorizeAliasOption,
>                     options::OPT_fno_vectorize, true)) {
>      CmdArgs.push_back("-backend-option");
>      CmdArgs.push_back("-vectorize-loops");
> 
> Modified: cfe/trunk/test/Driver/Ofast.c
> URL: http://llvm.org/viewvc/llvm-
> project/cfe/trunk/test/Driver/Ofast.c?rev=180206&r1=180205&r2=180206&vie
> w=diff
> ========================================================================
> ======
> --- cfe/trunk/test/Driver/Ofast.c (original)
> +++ cfe/trunk/test/Driver/Ofast.c Wed Apr 24 13:29:59 2013
> @@ -1,20 +1,31 @@
>  // RUN: %clang -Ofast -### %s 2>&1 | FileCheck -check-prefix=CHECK-
> OFAST %s
>  // RUN: %clang -fno-fast-math -Ofast -### %s 2>&1 | FileCheck -check-
> prefix=CHECK-OFAST %s
>  // RUN: %clang -fno-strict-aliasing -Ofast -### %s 2>&1 | FileCheck -
> check-prefix=CHECK-OFAST %s
> +// RUN: %clang -fno-vectorize -Ofast -### %s 2>&1 | FileCheck -check-
> prefix=CHECK-OFAST %s
>  // RUN: %clang -Ofast -fno-fast-math -### %s 2>&1 | FileCheck -check-
> prefix=CHECK-OFAST-NO-FAST-MATH %s
>  // RUN: %clang -Ofast -fno-strict-aliasing -### %s 2>&1 | FileCheck -
> check-prefix=CHECK-OFAST-NO-STRICT-ALIASING %s
> +// RUN: %clang -Ofast -fno-vectorize -### %s 2>&1 | FileCheck -check-
> prefix=CHECK-OFAST-NO-VECTORIZE %s
> 
>  // CHECK-OFAST: -cc1
>  // CHECK-OFAST-NOT: -relaxed-aliasing
>  // CHECK-OFAST: -ffast-math
>  // CHECK-OFAST: -Ofast
> +// CHECK-OFAST: -vectorize-loops
> 
>  // CHECK-OFAST-NO-FAST-MATH: -cc1
>  // CHECK-OFAST-NO-FAST-MATH-NOT: -relaxed-aliasing
>  // CHECK-OFAST-NO-FAST-MATH-NOT: -ffast-math
>  // CHECK-OFAST-NO-FAST-MATH: -Ofast
> +// CHECK-OFAST-NO-FAST-MATH: -vectorize-loops
> 
>  // CHECK-OFAST-NO-STRICT-ALIASING: -cc1
>  // CHECK-OFAST-NO-STRICT-ALIASING: -relaxed-aliasing
>  // CHECK-OFAST-NO-STRICT-ALIASING: -ffast-math
>  // CHECK-OFAST-NO-STRICT-ALIASING: -Ofast
> +// CHECK-OFAST-NO-STRICT-ALIASING: -vectorize-loops
> +
> +// CHECK-OFAST-NO-VECTORIZE: -cc1
> +// CHECK-OFAST-NO-VECTORIZE-NOT: -relaxed-aliasing
> +// CHECK-OFAST-NO-VECTORIZE: -ffast-math
> +// CHECK-OFAST-NO-VECTORIZE: -Ofast
> +// CHECK-OFAST-NO-VECTORIZE-NOT: -vectorize-loops
> 
> 
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits





More information about the cfe-commits mailing list