[llvm] 8250180 - Revert "Recommit "[LoopFlatten] Enable it by default""

Roman Lebedev via llvm-commits llvm-commits at lists.llvm.org
Mon Dec 5 07:35:44 PST 2022


Given the amount of miscompilations that is still being reported,
might i suggest to take a step back, and first address
the fundamental design issue that was pointed out originally,
i.e. not using SCEV but doing ad-hoc IR matching?

Roman

On Mon, Dec 5, 2022 at 6:14 PM Sjoerd Meijer via llvm-commits
<llvm-commits at lists.llvm.org> wrote:
>
>
> Author: Sjoerd Meijer
> Date: 2022-12-05T15:14:12Z
> New Revision: 8250180238575ad81aed2104ca69b8fdc98d60df
>
> URL: https://github.com/llvm/llvm-project/commit/8250180238575ad81aed2104ca69b8fdc98d60df
> DIFF: https://github.com/llvm/llvm-project/commit/8250180238575ad81aed2104ca69b8fdc98d60df.diff
>
> LOG: Revert "Recommit "[LoopFlatten] Enable it by default""
>
> This reverts commit 3ea6a9a469fde168c527b1c34c09f6d684ec86af because of the
> reported miscompilation in: https://github.com/llvm/llvm-project/issues/59339
>
> Added:
>
>
> Modified:
>     llvm/docs/ReleaseNotes.rst
>     llvm/lib/Passes/PassBuilderPipelines.cpp
>     llvm/test/Other/new-pm-defaults.ll
>     llvm/test/Other/new-pm-lto-defaults.ll
>     llvm/test/Other/new-pm-thinlto-defaults.ll
>     llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
>     llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
>     llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
>     llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
>
> Removed:
>
>
>
> ################################################################################
> diff  --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
> index 1412b2fc88c51..ce46d43a6abf3 100644
> --- a/llvm/docs/ReleaseNotes.rst
> +++ b/llvm/docs/ReleaseNotes.rst
> @@ -47,8 +47,6 @@ Non-comprehensive list of changes in this release
>     is not a constant in coroutines. This decision may cause unnecessary
>     performance regressions and we plan to fix it in later versions.
>
> -* The LoopFlatten pass is now enabled by default.
> -
>  * ...
>
>  Update on required toolchains to build LLVM
>
> diff  --git a/llvm/lib/Passes/PassBuilderPipelines.cpp b/llvm/lib/Passes/PassBuilderPipelines.cpp
> index df46119d91249..022861318ce95 100644
> --- a/llvm/lib/Passes/PassBuilderPipelines.cpp
> +++ b/llvm/lib/Passes/PassBuilderPipelines.cpp
> @@ -209,7 +209,7 @@ static cl::opt<bool> EnableUnrollAndJam("enable-unroll-and-jam",
>                                          cl::init(false), cl::Hidden,
>                                          cl::desc("Enable Unroll And Jam Pass"));
>
> -static cl::opt<bool> EnableLoopFlatten("enable-loop-flatten", cl::init(true),
> +static cl::opt<bool> EnableLoopFlatten("enable-loop-flatten", cl::init(false),
>                                         cl::Hidden,
>                                         cl::desc("Enable the LoopFlatten Pass"));
>
>
> diff  --git a/llvm/test/Other/new-pm-defaults.ll b/llvm/test/Other/new-pm-defaults.ll
> index abf4d91e9957f..ddb84d0ce6f29 100644
> --- a/llvm/test/Other/new-pm-defaults.ll
> +++ b/llvm/test/Other/new-pm-defaults.ll
> @@ -174,7 +174,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
> diff  --git a/llvm/test/Other/new-pm-lto-defaults.ll b/llvm/test/Other/new-pm-lto-defaults.ll
> index 18754d5868e9d..bbed7fbf3c07f 100644
> --- a/llvm/test/Other/new-pm-lto-defaults.ll
> +++ b/llvm/test/Other/new-pm-lto-defaults.ll
> @@ -116,7 +116,6 @@
>  ; CHECK-O23SZ-NEXT: Running pass: MergedLoadStoreMotionPass on foo
>  ; CHECK-O23SZ-NEXT: Running pass: LoopSimplifyPass on foo
>  ; CHECK-O23SZ-NEXT: Running pass: LCSSAPass on foo
> -; CHECK-O23SZ-NEXT: Running pass: LoopFlattenPass on loop
>  ; CHECK-O23SZ-NEXT: Running pass: IndVarSimplifyPass on loop
>  ; CHECK-O23SZ-NEXT: Running pass: LoopDeletionPass on loop
>  ; CHECK-O23SZ-NEXT: Running pass: LoopFullUnrollPass on loop
>
> diff  --git a/llvm/test/Other/new-pm-thinlto-defaults.ll b/llvm/test/Other/new-pm-thinlto-defaults.ll
> index c23bbea37cd1d..d4f9d56b3347f 100644
> --- a/llvm/test/Other/new-pm-thinlto-defaults.ll
> +++ b/llvm/test/Other/new-pm-thinlto-defaults.ll
> @@ -149,7 +149,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
> diff  --git a/llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll b/llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
> index eecae505b5c32..a2922672d6748 100644
> --- a/llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
> +++ b/llvm/test/Other/new-pm-thinlto-postlink-pgo-defaults.ll
> @@ -110,7 +110,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
> diff  --git a/llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll b/llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
> index 8c3cedc85d94d..b8e3f1658e4af 100644
> --- a/llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
> +++ b/llvm/test/Other/new-pm-thinlto-postlink-samplepgo-defaults.ll
> @@ -119,7 +119,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
> diff  --git a/llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll b/llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
> index 2e0773d373814..72ef3778a1f71 100644
> --- a/llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
> +++ b/llvm/test/Other/new-pm-thinlto-prelink-pgo-defaults.ll
> @@ -148,7 +148,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
> diff  --git a/llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll b/llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
> index 0eff1633a9dd2..cb9fe6e0051f2 100644
> --- a/llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
> +++ b/llvm/test/Other/new-pm-thinlto-prelink-samplepgo-defaults.ll
> @@ -114,7 +114,6 @@
>  ; CHECK-O-NEXT: Running pass: LICM
>  ; CHECK-O-NEXT: Running pass: SimpleLoopUnswitchPass
>  ; CHECK-O-NEXT: Running analysis: OuterAnalysisManagerProxy
> -; CHECK-O-NEXT: Running pass: LoopFlattenPass
>  ; CHECK-O-NEXT: Running pass: SimplifyCFGPass
>  ; CHECK-O-NEXT: Running pass: InstCombinePass
>  ; CHECK-O-NEXT: Running pass: LoopSimplifyPass
>
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits


More information about the llvm-commits mailing list