aboutsummaryrefslogtreecommitdiffstats
path: root/driver/Clflags.ml
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | Merge remote-tracking branch 'origin/mppa-licm' into mppa-featuresDavid Monniaux2020-04-201-1/+4
| |\ \ \ \ \ \ | | | |_|/ / / | | |/| | | |
| | * | | | | add options for controlling madd and notrap selectionDavid Monniaux2020-04-191-1/+3
| | | | | | |
| | * | | | | activate LICMDavid Monniaux2020-04-191-1/+1
| | | | | | |
| | * | | | | begin adapting for LICM phaseDavid Monniaux2020-04-011-0/+1
| | | |_|/ / | | |/| | |
| * | | | | Merge remote-tracking branch 'origin/mppa-profiling' into mppa-featuresDavid Monniaux2020-04-121-0/+3
| |\ \ \ \ \ | | |/ / / / | |/| | | |
| | * | | | reloading and exploiting seems to workDavid Monniaux2020-04-081-0/+1
| | | | | |
| | * | | | fixed a bug in support libraries; reload profiling infoDavid Monniaux2020-04-081-1/+0
| | | | | |
| | * | | | begin installing profilingDavid Monniaux2020-04-081-0/+3
| | | |/ / | | |/| |
| * | | | Merge remote-tracking branch 'origin/mppa-work' into mppa-cse3David Monniaux2020-03-171-1/+1
| |\| | |
| * | | | Merge remote-tracking branch 'origin/mppa-work' into mppa-cse3David Monniaux2020-03-151-0/+1
| |\ \ \ \
| * | | | | CSE3 alias analysisDavid Monniaux2020-03-141-2/+3
| | | | | |
| * | | | | Merge remote-tracking branch 'origin/mppa-work' into mppa-cse3David Monniaux2020-03-111-2/+2
| |\ \ \ \ \
| * | | | | | starts compiling but still fakeDavid Monniaux2020-03-101-0/+1
| | | | | | |
* | | | | | | make sure phases are alignedDavid Monniaux2020-04-231-1/+1
| |_|_|/ / / |/| | | | |
* | | | | | Desactivating branch predictions by defaultCyril SIX2020-03-171-1/+1
| |_|/ / / |/| | | |
* | | | | by default do not inline muchDavid Monniaux2020-03-151-1/+1
| | | | |
* | | | | more inliningDavid Monniaux2020-03-151-0/+1
| |/ / / |/| | |
* | | | [BROKEN] Replacing the boolean -fduplicate option by an integerCyril SIX2020-03-091-2/+2
|/ / / | | | | | | | | | To control the threshold for duplication
* | | Merge remote-tracking branch 'origin/mppa-work' into mppa-cse2David Monniaux2020-02-141-0/+1
|\ \ \
| * | | Added option -ftracelinearize which linearizes based on ifnot branchesCyril SIX2020-02-121-0/+1
| | | |
* | | | Merge remote-tracking branch 'origin/mppa-work' into mppa-cse2David Monniaux2020-02-061-0/+2
|\| | |
| * | | Added flag to desactivate condition inversionCyril SIX2020-02-031-0/+1
| | | |
| * | | Tail duplication optimization defaulting to offCyril SIX2020-01-271-1/+1
| | | |
| * | | Added a flag to desactivate tail duplicationCyril SIX2020-01-271-0/+1
| | | |
* | | | Merge branch 'dm-cse2' of /home/monniaux/progs/CompCert into mppa-cs2David Monniaux2020-01-281-0/+1
|\ \ \ \ | |/ / / |/| | |
| * | | connected (just a silly problem)David Monniaux2020-01-281-0/+1
| | |/ | |/|
* | | connect forward-moves to compilerDavid Monniaux2020-01-081-1/+2
| | |
* | | -fall-loads-nontrapDavid Monniaux2019-09-091-0/+1
| | |
* | | Merge branch 'master' of https://github.com/AbsInt/CompCert into ↵David Monniaux2019-07-191-1/+1
|\| | | | | | | | | | | mppa-work-upstream-merge
| * | Rename option `-ffavor-branchless` into `-Obranchless`Xavier Leroy2019-07-051-1/+1
| | | | | | | | | | | | | | | Easier to type, and consistent with `-Os` (optimize for smaller code / optimize for fewer conditional branches).
| * | If-conversion optimizationXavier Leroy2019-06-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extends the instruction selection pass with an if-conversion optimization: some if/then/else statements are converted into "select" operations, which in turn can be compiled down to branchless instruction sequences if the target architecture supports them. The statements that are converted are of the form if (cond) { x = a1; } else { x = a2; } if (cond) { x = a1; } if (cond) { /*skip*/; } else { x = a2; } where a1, a2 are "safe" expressions, containing no operations that can fail at run-time, such as memory loads or integer divisions. A heuristic in backend/Selectionaux.ml controls when the optimization occurs, depending on command-line flags and the complexity of the "then" and "else" branches.
* | | Merge branch 'if-conversion' of https://github.com/AbsInt/CompCert into ↵David Monniaux2019-06-031-0/+3
|\ \ \ | | | | | | | | | | | | mppa-if-conversion
| * | | If-conversion optimizationXavier Leroy2019-05-311-0/+2
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extends the instruction selection pass with an if-conversion optimization: some if/then/else statements are converted into "select" operations, which in turn can be compiled down to branchless instruction sequences if the target architecture supports them. The statements that are converted are of the form if (cond) { x = a1; } else { x = a2; } if (cond) { x = a1; } if (cond) { /*skip*/; } else { x = a2; } where a1, a2 are "safe" expressions, containing no operations that can fail at run-time, such as memory loads or integer divisions. A heuristic in backend/Selectionaux.ml controls when the optimization occurs, depending on command-line flags and the complexity of the "then" and "else" branches.
| * | Added options -fcommon and -fno-common (#164)Bernhard Schommer2019-05-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The option -fcommon controls whether uninitialized global variables are placed in the COMMON section. If the option is given in the negated form, -fno-common, variables are not placed in the COMMON section. They are placed in the same sections as gcc does. If the variables are not placed in the COMMON section merging of tentative definitions is inhibited and multiple definitions lead to a linker error, as it does for gcc.
* | | option -faddx (off by default until questions cleared)David Monniaux2019-05-111-1/+2
| |/ |/|
* | -fcoalesce-memDavid Monniaux2019-05-031-0/+1
| |
* | Merge branch 'mppa-xsaddr' into mppa-workDavid Monniaux2019-05-021-0/+4
|\ \
| * | command line options (still incomplete)David Monniaux2019-05-021-0/+4
| | |
* | | The scheduler selection works, but the argument is not optional yet ↵Cyril SIX2019-04-291-1/+1
|/ / | | | | | | (-fpostpass nameofscheduler)
* | -fpostpass-ilpDavid Monniaux2019-03-121-0/+1
| |
* | Added long double = double by default on Kalray architectureCyril SIX2019-03-011-1/+1
| |
* | -O0 will not perform postpass schedulingCyril SIX2019-01-181-0/+1
|/
* Inlining of static functions which are only called once. (#37)Bernhard Schommer2017-12-071-0/+1
| | | | | | | | | New inlining heuristic for static functions. Static functions that are only called once can always be inlined, since they can be removed safely after inlining and no call prologue, epilogue, as well as register saving and needs to be generated.
* Add optimization option finline.Bernhard Schommer2017-04-071-0/+1
| | | | | | The new option f(no-)inline controlls whether inlining is active or not. Bug 21343.
* Refactored debugging options.Bernhard Schommer2016-10-141-1/+1
| | | | | | | The options controlling the generation of debugging information are now moved into the Debug module. Futhermore the -gdepth options are replaced in favor of a more gcc compatible version. Bug 20193
* Remove undocumented option. Bug 20193Bernhard Schommer2016-10-141-1/+0
|
* Moved shared frontend code in own file.Bernhard Schommer2016-05-241-0/+2
| | | | | | | Clightgen and CompCert share the code for preprocessing as well as parsing C files. The code as well as command line switches is moved in the new module Frontend. Bug 18768
* Added option to dump preprocessed source code.Bernhard Schommer2016-01-221-0/+1
| | | | The new option -dprepro allows it to keep the preprocessed source code files.
* Revise and simplify the -fstruct-return and -fstruct-passing options.Xavier Leroy2015-12-081-3/+1
| | | | | | - Rename '-fstruct-return' into '-fstruct-passing', because this emulation affects both function result passing and function argument passing. Keep '-fstruct-return' as a deprecated synonymous for '-fstruct-passing' - Remove the ability to change the ABI for struct passing via the '-fstruct-passing=<abi>' and '-fstruct-return=<abi>' command-line flags. This was more confusing than useful. - Produce an error if a struct/union is passed as function argument and '-fstruct-passing' is not set. This used to be supported, using CompCert's default ABI for passing struct arguments. However, this default ABI does not match any of the standard ABIs of our target platforms, so it is better to reject than to silently produce ABI-incompatible code.
* Added now option to control debug output.Bernhard Schommer2015-11-161-1/+1
| | | | | | | | | | | The new option gdepth subumes the gonly-globals. The option allows it to control the level of information that is produced. This option allows it to generate debugging inforation for: -Only globals -Global and local variables but without location information for the local variable -Full information Bug 17638.