SoftwareX · 2020 · 31 citations · 12 references
ComputingComputer EngineeringComputer ScienceCompilersProgramming LanguagesSoftware EngineeringCode GenerationCompiler ConstructionControl-flow AnalysisData-flow AnalysisSoftware ConstructionStatic Code AnalysisCode CompilationCode TranslationCompiler DesignCompiler SupportCompiler-based GenerationIntermediate Code GenerationRuntime Code GenerationSource Code Analysis
This article presents Clava, a Clang-based source-to-source compiler, that accepts scripts written in LARA, a JavaScript-based DSL with special constructs for code queries, analysis and transformations. Clava improves Clang’s source-to-source capabilities by providing a more convenient and flexible way to analyze, transform and generate C/C++ code, and provides support for building strategies that capture run-time behavior. We present the Clava framework, its main capabilities, and how it can been used. Furthermore, we show that Clava is sufficiently robust to analyze, instrument and test a set of large C/C++ application codes, such as GCC.
12
Cetus: A Source-to-Source Compiler Infrastructure for Multicores
Chirag Dave, Hansang Bae, Seung-Jai Min et al. · Computer · 2009 · 191 citations
Semantical interprocedural parallelization
François Irigoin, Pierre Jouvelot, Rémi Triolet · 2014 · 135 citations