Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Print p_int_constant instead of p_int in AsmToJSON. | Bernhard Schommer | 2015-09-02 | 1 | -5/+5 |
| | |||||
* | Added builtin for dcbtls | Bernhard Schommer | 2015-09-02 | 6 | -13/+63 |
| | | | | | | THis commit adds a builtin function for the dcbtls instruction. Additionaly it changes the printing of the dcbt and dcbtst instruction to embedded mode and adds support for different address variants. | ||||
* | Added the gcc builtin prefetch. | Bernhard Schommer | 2015-09-01 | 6 | -0/+25 |
| | | | | | | This commit implements the gcc __builtin_prefetch in a form with all arguments for the powerpc architecture. The resulting instructions are the dcbt and dcbtst instructions in Server Category. | ||||
* | Improve error reporting in Asmexpand. | Xavier Leroy | 2015-08-24 | 1 | -19/+32 |
| | |||||
* | Renaming {BA,BR}_longofwords -> {BA,BR}_splitlong. | Xavier Leroy | 2015-08-22 | 4 | -33/+24 |
| | | | | | | | | Use EF_debug instead of EF_annot for line number annotations. Introduce PrintAsmaux.print_debug_info (very incomplete). powerpc/Asmexpand: revise expand_memcpy_small. | ||||
* | Adapt the PowerPC port to the new builtin representation. | Xavier Leroy | 2015-08-21 | 10 | -258/+285 |
| | | | | | | | __builtin_get_spr() and __builtin_set_spr() work, but horrible error message if the SPR argument is not a constant. powerpc/AsmToJSON.ml needs updating. | ||||
* | Added builtin for the dcbf instruction | Bernhard Schommer | 2015-08-17 | 5 | -0/+9 |
| | |||||
* | Merge pull request #46 from AbsInt/asmexpand | Xavier Leroy | 2015-08-17 | 1 | -44/+11 |
|\ | | | | | Merge branch 'asmexpand' of github.com:AbsInt/CompCert | ||||
| * | Merge branch 'master' into asmexpand | Bernhard Schommer | 2015-07-14 | 4 | -17/+419 |
| |\ | |||||
| * | | Merge branch 'asmexpand' of github.com:AbsInt/CompCert | Bernhard Schommer | 2015-06-26 | 1 | -44/+11 |
| | | | |||||
| * | | Revert "Merge branch 'asmexpand' of github.com:AbsInt/CompCert" | Bernhard Schommer | 2015-06-26 | 1 | -11/+44 |
| | | | | | | | | | | | | | | | This reverts commit 777566e81b9762d6bdc773a1f63d56a7ac97433c, reversing changes made to daf9ac64fc9611ecf09d70560a6fa1ba80b9c9c1. | ||||
| * | | Merge branch 'asmexpand' of github.com:AbsInt/CompCert | Bernhard Schommer | 2015-06-26 | 1 | -44/+11 |
| |\ \ | |||||
| | * | | Moved the printing of the builtin functions etc. into Asmexpand for ARM in ↵ | Bernhard Schommer | 2015-06-10 | 1 | -44/+11 |
| | | | | | | | | | | | | | | | | the same way as it is done for PPC. | ||||
* | | | | Added builtin for the dcbi instruction. | Bernhard Schommer | 2015-08-17 | 5 | -4/+11 |
| | | | | |||||
* | | | | Added builitin for the icbi instruction. | Bernhard Schommer | 2015-08-14 | 5 | -1/+11 |
| | | | | |||||
* | | | | Added builtin for the lwsync barrier. | Bernhard Schommer | 2015-08-14 | 5 | -3/+12 |
| | | | | |||||
* | | | | Value analysis: keep track of pointer values that leak through small ↵ | Xavier Leroy | 2015-07-19 | 2 | -21/+21 |
| | | | | | | | | | | | | | | | | | | | | | | | | integers with Uns or Sgn abstract values. This is a follow-up to commit 2932b53. It adds provenance tracking to the Uns and Sgn abstract values. | ||||
* | | | | Value analysis: keep track of pointer values that leak through arithmetic ↵ | Xavier Leroy | 2015-07-19 | 1 | -2/+2 |
| |_|/ |/| | | | | | | | | | | | | | | operations with undefined behaviors. Consider (x ^ 1) ^ 1 where x is a intptr_t containing a pointer value. "x ^ 1" evaluates to Vundef in the CompCert semantics, hence the value analysis, in strict mode, gives abstract result Ifptr Pbot (= any number but not a pointer). In relaxed mode, we now give abstract result Ifptr (poffset p) where p is the abstraction of the pointer, thus keeping track of the actual leak of the pointer value. | ||||
* | | | Set/clear CR6 before calling an unprototyped function. | Xavier Leroy | 2015-07-07 | 1 | -3/+4 |
| | | | | | | | | | | | | | | | | | | A function declared without a prototype could be implemented by a vararg function (even though this is undefined behavior in C99). Be nice in this case. | ||||
* | | | Use the functions from C2C to extract the information for the atoms. ↵ | Bernhard Schommer | 2015-07-06 | 1 | -17/+18 |
| | | | | | | | | | | | | Simplified printing of storage class. | ||||
* | | | Merge branch 'master' into json_export | Bernhard Schommer | 2015-07-06 | 4 | -15/+54 |
|\ \ \ | | | | | | | | | | | | | | | | | Conflicts: driver/Driver.ml | ||||
| * | | | Corrected little typo in __builtin_clz function. | Bernhard Schommer | 2015-07-06 | 3 | -5/+5 |
| | | | | |||||
| * | | | Simple path for problems whith diab assembler in the case of functions in ↵ | Bernhard Schommer | 2015-07-03 | 1 | -9/+48 |
| |/ / | | | | | | | | | | different sections. | ||||
* | | | Print bit representation of floats. | Bernhard Schommer | 2015-06-24 | 1 | -5/+6 |
| | | | |||||
* | | | Fixed typo also in json export. | Bernhard Schommer | 2015-06-22 | 1 | -1/+1 |
| | | | |||||
* | | | Merge branch 'master' into json_export | Bernhard Schommer | 2015-06-22 | 3 | -5/+5 |
|\| | | |||||
| * | | Changed a minor typo: Pstwxu should be Pstwux | Bernhard Schommer | 2015-06-22 | 3 | -5/+5 |
| |/ | |||||
* | | Merged instructions that are printed as same instruction already in printer. | Bernhard Schommer | 2015-05-29 | 1 | -26/+26 |
| | | |||||
* | | Updated the printing of iniline asm and simplified some structures. | Bernhard Schommer | 2015-05-18 | 1 | -136/+118 |
| | | |||||
* | | Merge branch 'master' into json_export | Bernhard Schommer | 2015-05-18 | 5 | -41/+65 |
|\| | |||||
| * | Merged PrintAnnot into PrintAsmaux. | Bernhard Schommer | 2015-05-14 | 1 | -6/+6 |
| | | |||||
| * | Updated PrintOp for the single-precision FP operations. | Xavier Leroy | 2015-05-09 | 1 | -0/+8 |
| | | |||||
| * | Extended inline asm: revised treatment of clobbered registers. | Xavier Leroy | 2015-05-09 | 3 | -35/+51 |
| | | | | | | | | | | | | | | | | | | | | - Treat clobbered registers as being destroyed by EF_inline_asm builtins (which is the truth, semantically). - To enable the above, represent clobbers as Coq strings rather than idents and move register_by_name from Machregsaux.ml to Machregs.v. - Side benefit: more efficient implementation of Machregsaux.name_of_register. -# Please enter the commit message for your changes. Lines starting | ||||
* | | Moved the information needed from the atoms to the ASM printer and removed ↵ | Bernhard Schommer | 2015-05-06 | 1 | -26/+48 |
| | | | | | | | | unused information from the json dump. | ||||
* | | Removed printing of information for internals and externals that should be ↵ | Bernhard Schommer | 2015-05-05 | 1 | -49/+28 |
| | | | | | | | | folded away prior. | ||||
* | | Merge branch 'master' into json_export | Bernhard Schommer | 2015-05-05 | 1 | -35/+35 |
|\| | |||||
| * | Long-overdue renaming: val_inject -> Val.inject, etc, for consistency with ↵ | Xavier Leroy | 2015-04-30 | 1 | -35/+35 |
| | | | | | | | | Val.lessdef, etc. | ||||
* | | Added the first version of the sdump export to json. | Bernhard Schommer | 2015-04-27 | 1 | -0/+377 |
|/ | |||||
* | Allow "scratch" (non-allocatable temporary registers) to be mentioned in asm ↵ | Xavier Leroy | 2015-04-23 | 2 | -1/+4 |
| | | | | clobber lists. | ||||
* | Take asm clobbers into account for determining callee-save registers used. | Xavier Leroy | 2015-04-23 | 2 | -0/+8 |
| | |||||
* | Cleanups and updates for extended asm. | Xavier Leroy | 2015-04-21 | 1 | -2/+1 |
| | |||||
* | Support for GCC-style extended asm, continued: | Xavier Leroy | 2015-04-21 | 2 | -2/+2 |
| | | | | | | | | - support "r", "m" and "i" constraints - support "%Q" and "%R" modifiers for register pairs - support register clobbers - split off analysis and transformation of asm statements in cparser/ExtendedAsm.ml | ||||
* | Experiment: support a subset of GCC's extended asm statements. | Xavier Leroy | 2015-04-17 | 3 | -7/+16 |
| | |||||
* | Merge branch 'master' into dwarf | Bernhard Schommer | 2015-04-02 | 8 | -52/+54 |
|\ | |||||
| * | Ccompuimm now depends on the memory, this is needed to proof the Lemma ↵ | Bernhard Schommer | 2015-04-02 | 1 | -2/+3 |
| | | | | | | | | op_depends_on_memory_correct. | ||||
| * | Updating the PowerPC and ARM ports. | Xavier Leroy | 2015-03-27 | 7 | -50/+51 |
| | | | | | | | | PowerPC: always use full register names to print annotations. | ||||
* | | Print all files ever encountered in the filenum. | Bernhard Schommer | 2015-04-01 | 1 | -4/+3 |
| | | |||||
* | | Started implementing the printing functions for the debug info. Added a ↵ | Bernhard Schommer | 2015-03-16 | 1 | -0/+12 |
| | | | | | | | | global target dependend option to activate the printing only for targets wher it works. | ||||
* | | Started integrating the debug printing in the common backend_printer. | Bernhard Schommer | 2015-03-11 | 1 | -6/+54 |
|/ | |||||
* | Removed unused sel_target, changed cygwin symbol names and changed the ↵ | Bernhard Schommer | 2015-02-19 | 1 | -0/+1 |
| | | | | default function aligment to be target dependent. |