Comments (1)
After generating the new source files, a few more steps are needed to produce the final executable.
There are three options.
-
Use a wrapper script within the REX compiler:
REX compiler will compile the new source files with correct order and parameters. Users won't see the complicated procedure but the final executable.
The disadvantage is that if users would like to compile the new source files, they may not know how to do that because the details are hidden from them. -
Create a Makefile to produce the executable:
We put the detailed steps for compilation in the Makefile. Users can get the executable by themselves. It's easier for them to modify the new source files and compile them later.
The drawback is that extra file is created and the dependencies inside the Makefile are hard-coded based on the situation while generating the Makefile. If users go to another machine or the configuration of REX compiler is changed, the Makefile may not work anymore.
Another thing is that the Makefile may need a unique name because two source files in the same folder will overwrite others' Makefile. When users use the Makefile, they have to specify the filename of Makefilemake -f <filename>
instead of simply runningmake
. -
Combine option 1 and 2 together.
from rexompiler.
Related Issues (20)
- [Fortran] Incorrect unparsing for omp parallel HOT 2
- [Fortran]: The generated file for outlined function is empty HOT 1
- Move getFile and getStatement call of src/roseSupport/transformationSupport.h/C to SageInterface
- Warning of yacc for omp_exprparser_parser.yy HOT 1
- Warning from not following automake naming structure
- Remove src/frontend/SageIII/astFromString HOT 1
- Add directive-name-modifer to all OpenMP clauses
- Lost the declaration of omp loop control variable during transformation. HOT 1
- Incorrect outlining for C++ OpenMP code HOT 1
- command line processing: not able to report unrecognized command line option
- Reduction clause bug HOT 3
- Change the sage calss of OpenMP clause
- Reconsider parameter passing in outlined function
- Scoping concern about outlining an OpenMP loop
- deBOOST: Removing BOOST dependency HOT 1
- deSawyer: removing the dependency on Sawyer library and clean up utility HOT 5
- Data sharing in dynamic parallelism
- Cleanup and use the new MLOG_* message and logging utilities HOT 1
- Refactoring or removing enum stringify HOT 2
- Optimize transformation of firstprivate clause in OpenMP GPU offloading HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rexompiler.