mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-30 02:25:19 +00:00
Use address-taken to disambiguate global variable and indirect memops.
Major steps include: 1). introduces a not-addr-taken bit-field in GlobalVariable 2). GlobalOpt pass sets "not-address-taken" if it proves a global varirable dosen't have its address taken. 3). AA use this info for disambiguation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193251 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -1723,6 +1723,7 @@ bool GlobalOpt::ProcessGlobal(GlobalVariable *GV,
|
||||
if (GlobalStatus::analyzeGlobal(GV, GS))
|
||||
return false;
|
||||
|
||||
GV->setAddressMaybeTaken(false);
|
||||
if (!GS.IsCompared && !GV->hasUnnamedAddr()) {
|
||||
GV->setUnnamedAddr(true);
|
||||
NumUnnamed++;
|
||||
|
Reference in New Issue
Block a user