An apparatus, method, and program product for optimizing code that contains
dynamically-allocated memory. The aliasing behavior of internal pointers
of dynamically-allocated memory is used to disambiguate memory accesses
and to eliminate false data dependencies. It is determined whether a
dynamically-allocated array will behave like a statically-allocated array
throughout the entire program execution once it has been allocated. This
determination is used to improve the instruction scheduling efficiency,
which yields better performance.
Um instrumento, um método, e um produto do programa para o código optimizing que contem a memória dinâmico-alocada. O comportamento do aliasing de ponteiros internos da memória dinâmico-alocada é usado disambiguate acessos de memória e eliminar dependências falsas dos dados. Determina-se se uma disposição dinâmico-alocada se comportará como uma disposição de estática-alocada durante todo a execução de programa inteira foi alocada uma vez que. Esta determinação é usada melhorar a eficiência programando da instrução, que rende o desempenho melhor.