Articulo de referencia

Bloque básico extendido

En informática , un bloque básico extendido [ 1 ] [ 2 ] es una colección de bloques básicos del código dentro de un programa con ciertas propiedades que los hacen altamente susc...

En informática , un bloque básico extendido [ 1 ] [ 2 ] es una colección de bloques básicos del código dentro de un programa con ciertas propiedades que los hacen altamente susceptibles a optimizaciones. Muchas optimizaciones de compiladores operan sobre bloques básicos extendidos.

Definición

Un bloque básico extendido es una colección máxima de bloques básicos donde:

  • Solo el primer bloque básico puede tener múltiples bloques básicos predecesores.
  • Todos los demás bloques básicos tienen un único bloque básico predecesor, que debe estar dentro de la colección de bloques básicos.

Usos

Muchas optimizaciones locales que operan sobre bloques básicos pueden extenderse fácilmente para operar sobre bloques básicos extendidos. Un ejemplo es la eliminación de subexpresiones comunes , que elimina expresiones duplicadas. En su forma más simple, es una optimización local que opera solo sobre bloques básicos. [ 3 ]

Véase también

Notas

  1. Cooper, Keith D., y Torczon, Linda, Ingeniería de un compilador , Morgan Kaufmann, 2004, ISBN 1-55860-699-8página 405
  2. Steven S. Muchnick , Diseño e implementación avanzados de compiladores , Morgan Kaufmann Publishers, 1997. ISBN 1-55860-320-4página 175
  3. "Ampliación de la numeración de valores - ReuvenLax - Página principal - Blogs de MSDN" . Archivado del original el 15 de mayo de 2014. Consultado el 4 de julio de 2012 .
  • Bloques básicos - Colección de compiladores GNU
  • La diferencia entre bloques básicos extendidos y trazas