HomePhabricator

[StackColoring] Update AliasAnalysis information in stack coloring pass

Description

[StackColoring] Update AliasAnalysis information in stack coloring pass

Stack coloring pass need to maintain AliasAnalysis information when merging stack slots of different types.
Actually, there is a FIXME comment in StackColoring.cpp

FIXME: In order to enable the use of TBAA when using AA in CodeGen,
we'll also need to update the TBAA nodes in MMOs with values
// derived from the merged allocas.

But, TBAA has been already enabled in CodeGen without fixing this pass.
The incorrect TBAA metadata results in recent failures in bootstrap test on ppc64le (PR33928) by allowing unsafe instruction scheduling.
Although we observed the problem on ppc64le, this is a platform neutral issue.

This patch makes the stack coloring pass maintains AliasAnalysis information when merging multiple stack slots.

Details

Committed
inouehrsJul 31 2017, 8:32 PM
Parents
rL309650: [demangler] Fix another bug found by oss-fuzz in r309340
Branches
Unknown
Tags
Unknown