llvm-project
87c86aa6 - [X86,SimplifyCFG] Support hoisting load/store with conditional faulting (Part I) (#96878)

Commit
1 year ago
[X86,SimplifyCFG] Support hoisting load/store with conditional faulting (Part I) (#96878) This is simplifycfg part of https://github.com/llvm/llvm-project/pull/95515 In this PR, we support hoisting load/store with conditional faulting in `SimplifyCFGOpt::speculativelyExecuteBB` to eliminate conditional branches. This is for cases like ``` void test (int a, int *b) { if (a) *b = a; } ``` In the following patches, we will support the hoist in `SimplifyCFGOpt::hoistCommonCodeFromSuccessors`. That is for cases like ``` void test (int a, int *c, int *d) { if (a) *c = a; else *d = a; } ```
Author
Parents
Loading