Optimization Topics/Exercise 08
From Wiki**3
Problema
Considere a seguinte função em C:
- Que optimizações independentes da máquina são possíveis?
- Traduza-a para Postfix optimizado.
double *fun(double *a, double *b) {
double *c = (double *)malloc(2 * 8);
int i;
for (i = 0; i < (len < 2 ? len : 2); i++)
c[i] = a[i] + b[i];
return c;
}
Código Postfix (não optimizado)
O código Postfix correspondente ao código C é o seguinte (agradece-se a comunicação de questões relativas a este código).
| Código Postfix |
|---|
Compiling and Running
Para compilar o código Postfix directamente, pode ser utilizada a ferramenta pf2asm (assumindo uma arquitectura Intel de 32 bits -- ix86):
pf2asm code.pf yasm -felf32 code.asm