Estoy compilando código con clang
con optimización -O4. Sin embargo, quiero desactivar la incorporación de funciones. Tengo mi propio pase LLVM que inyecta código al código generado. Después de mi pase, quiero habilitar la alineación de funciones. Cómo puedo hacer eso.Cómo deshabilitar una optimización en LLVM
6
A
Respuesta
6
Puede utilizar opt says que puede ejecutar pasa en cualquier orden.
clang -c main.cpp -O0 -emit-llvm | opt -load yourplugin -yourpass -inline
4
Si hacen trizas sonido metálico, puede cambiar el orden en el archivo pasa clang/lib/CodeGen/BackendUtil.cpp
. Debe insertar su pase antes de ingresar en el método CreatePasses()
.
Cuestiones relacionadas
- 1. Niveles de optimización en LLVM y Clang
- 2. Obteniendo los operandos en una instrucción LLVM
- 3. Diferencia b/w llvm-ld y llvm-link
- 4. ¿Cómo incrustar LLVM?
- 5. Cómo deshabilitar la optimización del valor de retorno en Visual Studio 2010?
- 6. ¿Qué tipos de optimización LLVM hace y qué tipo de optimizaciones tienen que implementar sus interfaces?
- 7. ¿Cómo puedo declarar una variable global en LLVM?
- 8. Multithreading en LLVM
- 9. Construir con LLVM y cualquier optimización hace que la aplicación se cuelgue al iniciar
- 10. de LLVM para GHC
- 11. Hacer LLVM en línea una función desde una biblioteca
- 12. Cómo deshabilitar una aplicación en Apache OFBiz
- 13. Cómo deshabilitar el teclado en una UITextView?
- 14. Cómo deshabilitar destacado en una imagen
- 15. -emit-llvm en Linux
- 16. Auto vectorización en llvm
- 17. Vinculación del código LLVM JIT a las bibliotecas LLVM estáticas?
- 18. Deshabilitar CheckboxCell en una Celda
- 19. Optimización de ViewState
- 20. Reenvío de argumentos en LLVM
- 21. ¿Desactivar la optimización en javac?
- 22. optimización restringida en R
- 23. generación binaria de LLVM
- 24. LLVM - vinculación problema
- 25. jit LLVM y nativo
- 26. LLVM stdin/stdout/stderr
- 27. ¿Cómo registrar un nuevo backend LLVM?
- 28. optimización paralela en R
- 29. ¿Cómo desconectar el ensamblador integrado de LLVM?
- 30. ¿Cómo se implementa LLVM isa <>?
¿No puede asegurarse de que su pase esté entre los primeros pases de optimización? Es decir. asegúrese de que se ejecuta * antes * de que pase la función inliner? – Giel
¿Cómo puedo hacer eso Giel? – pythonic