| Index: src/IceTargetLoweringX86BaseImpl.h
|
| diff --git a/src/IceTargetLoweringX86BaseImpl.h b/src/IceTargetLoweringX86BaseImpl.h
|
| index 77048b089c1a4c9934568f8dd973429138e36f9c..2bc2386bf82890dbe8d15243b59d677b7eb4714a 100644
|
| --- a/src/IceTargetLoweringX86BaseImpl.h
|
| +++ b/src/IceTargetLoweringX86BaseImpl.h
|
| @@ -406,6 +406,12 @@ template <class Machine> void TargetX86Base<Machine>::translateO2() {
|
| Func->contractEmptyNodes();
|
| Func->reorderNodes();
|
|
|
| + // Shuffle basic block order if -reorder-basic-blocks is enabled.
|
| + if (Ctx->getFlags().shouldReorderBasicBlocks()) {
|
| + Func->shuffleNodes();
|
| + Func->dump("After basic block shuffling");
|
| + }
|
| +
|
| // Branch optimization. This needs to be done just before code emission. In
|
| // particular, no transformations that insert or reorder CfgNodes should be
|
| // done after branch optimization. We go ahead and do it before nop insertion
|
| @@ -449,6 +455,12 @@ template <class Machine> void TargetX86Base<Machine>::translateOm1() {
|
| return;
|
| Func->dump("After stack frame mapping");
|
|
|
| + // Shuffle basic block order if -reorder-basic-blocks is enabled.
|
| + if (Ctx->getFlags().shouldReorderBasicBlocks()) {
|
| + Func->shuffleNodes();
|
| + Func->dump("After basic block shuffling");
|
| + }
|
| +
|
| // Nop insertion
|
| if (Ctx->getFlags().shouldDoNopInsertion()) {
|
| Func->doNopInsertion();
|
|
|