Difference between revisions of "Extending NaplesPU for 64-bit support"

From NaplesPU Documentation
Jump to: navigation, search
(nu+ frontend modifications)
(nu+ frontend modifications)
Line 6: Line 6:
 
== nu+ frontend modifications ==
 
== nu+ frontend modifications ==
  
nu+ frontend abstracts target informations through the ''TargetInfo'' class, extending it into the [[nu+ Clang Documentation #Defining Target Features | NuPlusTargetInfo]] implementation.
+
nu+ frontend abstracts target informations through the ''TargetInfo'' class, extending it in the [[nu+ Clang Documentation #Defining Target Features | NuPlusTargetInfo]] implementation.
 +
Since 64-bit operations require to support double-integer and double-floating-point formats, the following changes and additions are required in the target definition:
 +
 
 +
<syntaxhighlight>
 +
 
 +
</syntaxhighlight>

Revision as of 16:24, 5 April 2019

nu+ toolchain can be extended to support 64-bit operations. A git branch with full 64-bit support is provided. Consequently, if it is necessary to compile the toolchain supporting this extension, a checkout on llvm-7 branch is required.

Changes are related to both frontend and backend.

nu+ frontend modifications

nu+ frontend abstracts target informations through the TargetInfo class, extending it in the NuPlusTargetInfo implementation. Since 64-bit operations require to support double-integer and double-floating-point formats, the following changes and additions are required in the target definition: