Microsoft Developer Network > Página Inicial dos Fóruns > Phoenix > Problems in running Lattice analyzer after adding memory operands
Fazer uma PerguntaFazer uma Pergunta
 

PerguntaProblems in running Lattice analyzer after adding memory operands

  • sexta-feira, 3 de julho de 2009 5:10if if Medalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     
    Hello,
    I'm trying to do something which involves changing the flow graph of the function, so as to include a newly created basic block which comprises of instructions that have a couple of manually created memory operands, which have no tags assigned yet. So to assign tags, I create a lattice analyzer, and run it manually using: myLatticeAnalyzer.Run(), after setting myLatticeAnalyzer.DoApplyCallSummaries to true. When I run the lattice analyzer, I get the following errors:

    Phoenix Assertion Failure: d:\enlistments\sdk_june08\src\phx\lattices\alias-lattice.cpp, Line 193
      !lattice->SsaInfo->DoIncludeAliasedVariables
      in (Function number 0) ?mallocIndirectToInt@@YAXPAPAH@Z [line 0] during CustomLatticePhase
      in (Module) testipo2.cpp

    Can somebody please help me and tell me what should be done in such a situation.

    Regards,
    If If

Todas as Respostas

  • quinta-feira, 9 de julho de 2009 14:11Andy Ayers - MSFTModeradorMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuárioMedalhas de usuário
     
    The alias lattice needs to run over unaliased SSA. If you are building SSA as prerequisite for running the alias lattice, check the configuration flags. If you are using an existing SSA you'll need to remove it and rebuild with unaliased SSA.

    You should assign (possibly conservative) tags when you create the memory operands.
    Architect - Microsoft Phoenix Project