Articulo de referencia

Rutina de hojas

Una rutina hoja , subrutina hoja , función hoja o procedimiento hoja es una función que no llama a otra función. Algunos compiladores pueden aplicar optimizaciones de programa e...

Una rutina hoja , subrutina hoja , función hoja o procedimiento hoja es una función que no llama a otra función. Algunos compiladores pueden aplicar optimizaciones de programa especiales a las rutinas hoja para hacerlas más eficientes, como el uso de registros de enlace para evitar tener que colocar la dirección de retorno en la pila, o no asignar una ventana de registro en arquitecturas de CPU derivadas de Berkeley RISC . [ 1 ]

El término "hoja" se refiere a su posición como nodos hoja en el grafo de llamadas del programa.

Por lo general, la mayoría de las rutinas que no son hojas llaman a más de una función. En estos casos, la mayoría de las llamadas a funciones en el grafo de llamadas corresponden a rutinas hoja, ya que un árbol binario tiene más nodos hoja que nodos no hoja (suponiendo que todos los nodos no hoja tienen dos hijos). En consecuencia, la eficiencia de las llamadas a rutinas hoja suele tener un efecto significativo en la eficiencia del programa completo.

Referencias

  1. "Funciones hoja (Manual de aspectos internos de GCC (GNU Compiler Collection))" .