[PATCH] D29092: PR31729: [GVNHoist] Don't hoist unsafe scalars at -Oz

Hans Wennborg via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 1 09:26:41 PST 2017


hans added a comment.

In https://reviews.llvm.org/D29092#689715, @hiraditya wrote:

> Removing all -Oz/-Os specific code hoisting.


Actually, you changed from

  if (Call->mayHaveSideEffects()) {                                                                                            
    if (!OptForMinSize)                                                                                                        
      break;                                                                                                                   
    // We may continue hoisting across calls which write to memory.                                                            
    if (Call->mayThrow())                                                                                                      
      break;                                                                                                                   
  }

to

  if (Call->mayHaveSideEffects()) {                                                                                            
    // We may continue hoisting across calls which write to memory.                                                            
    if (Call->mayThrow())                                                                                                      
      break;                                                                                                                   
  }

which means rather than disabling this also for -Oz, you enabled it for all levels.

I'll fix this when committing.

I also note that there are no tests covering this.


https://reviews.llvm.org/D29092





More information about the llvm-commits mailing list