L
leoparis
Curioso
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
He estado trabajando en un proyecto C donde he usado funciones en línea para aumentar la eficiencia de mi código. Pero me encontré con un escenario en el que el tamaño de mi código generado es significativamente más grande de lo planeado, lo que genera problemas de memoria.
Este método se llama varias veces a lo largo de mi código y su código se copia en la función de llamada cada vez. Esto puede dar como resultado un código redundante y un tamaño de código compilado más grande.
Para examinar el problema, encontré este artículo, que utilizaba el comando objdump para inspeccionar el código ensamblador de la misma manera que lo hizo mi aplicación creada. El método en línea se copió numerosas veces a lo largo del código, lo que resultó en un tamaño de programa sustancialmente mayor que el planeado.
Entonces, ¿qué debo hacer a continuación?
Insertar CODE, HTML o PHP:
inline int add(int x, int y) {
return x + y;
}
Para examinar el problema, encontré este artículo, que utilizaba el comando objdump para inspeccionar el código ensamblador de la misma manera que lo hizo mi aplicación creada. El método en línea se copió numerosas veces a lo largo del código, lo que resultó en un tamaño de programa sustancialmente mayor que el planeado.
Entonces, ¿qué debo hacer a continuación?