Skip to contentSkip to content
Certificados verificados. En cadena. Para siempre.Más información
Cover image for Conversión a SSA y Eliminación de Subexpresiones Comunes
Code

Conversión a SSA y Eliminación de Subexpresiones Comunes

FreeVerified credential4 semanasAdvanced

Visión general

De qué trata este proyecto.

Construye el CFG del IR de entrada, calcula los frontiers de dominancia con el algoritmo de Cytron et al. e inserta phi nodes para variables vivas. Renombra variables con el algoritmo estándar. Implementa GCSE basado en hashing canónico de expresiones (value numbering). Demuestra equivalencia con el intérprete del lenguaje sobre 25 programas de regresión y reducción de operaciones aritméticas sobre 8 expresiones representativas de visualización. Entrega el código, una suite de tests y un reporte de reducción.

CredentialBlockchain-anchored
ShareableLinkedIn-ready
LanguageEnglish
PaceSelf-paced

El Briefing

Lo que harás y lo que demostrarás.

Convertir el IR a SSA con phi nodes y aplicar GCSE basada en value numbering, demostrando reducción medible sobre 8 expresiones representativas.

Earning criteria — what you'll demonstrate

  • Calcular frontiers de dominancia eficientemente
  • Insertar y renombrar phi nodes siguiendo el algoritmo de Cytron
  • Implementar value numbering global con hashing canónico
  • Verificar correctitud de un refactor de IR con tests de equivalencia

Encaje académico

Dónde encaja esto en tus estudios.

Afina las mismas habilidades que tu titulación espera de ti.

Carreras

Roles para los que esto te prepara.

Títulos reales. Puentes de habilidades reales. Elige el que más se acerque a tu trayectoria.

Trayectorias profesionales que esto construye

Roles canónicos

Ingeniero de Software

SSA + value numbering son técnicas que aparecen en sistemas de query planning, motores de reglas y JITs — un ingeniero de software con esta base ataca optimizaciones de bajo nivel con criterio.

Este proyecto afina

  • ssa-construction
  • value-numbering
  • compiler-optimization

Ingeniero Backend

El análisis de dominancia se reutiliza tal cual en optimizadores de consultas SQL y motores de stream processing — habilidad backend de alto valor.

Este proyecto afina

  • dominance-analysis
  • common-subexpression-elimination
  • cpp

Una cosa más

Puedes tener una credencial en tu CV para el viernes.