O que é alocação de registradores?
A alocação de registradores é a fase de geração de código que atribui os muitos valores usados por um programa ao pequeno conjunto fixo de registradores da CPU. Quando há mais valores vivos do que registradores, alguns são despejados para a memória e recarregados depois. Uma boa alocação, frequentemente modelada como coloração de grafos, minimiza esses despejos custosos.
Por que isso importa
Registradores são muito mais rápidos que a memória, então a forma como os valores são alocados molda diretamente a velocidade do código gerado. Despejo excessivo é uma causa comum de saída compilada mais lenta do que o esperado.
Guias relacionados
What Is Instruction Scheduling?Instruction scheduling reorders machine instructions to keep the CPU pipeline busy and hide latencies, withou…
What Is Strength Reduction?Strength reduction replaces expensive operations with cheaper equivalent ones, such as turning a multiplicati…
What Is a Basic Block?A basic block is a straight-line sequence of instructions with one entry and one exit, used as the unit of an…