Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | Fixed minor typo in printing of the Plbzx instruction in AsmToJSON. | Bernhard Schommer | 2015-09-03 | 1 | -1/+1 | |
| | | ||||||
* | | Fixed minor typo in AsmToJSON. | Bernhard Schommer | 2015-09-03 | 1 | -1/+1 | |
| | | ||||||
* | | Added builtin for mbar instruction. | Bernhard Schommer | 2015-09-03 | 6 | -0/+15 | |
| | | | | | | | | This commit adds a builtin function for the mbar instruction. | |||||
* | | New builtin for dcbz instruction. | Bernhard Schommer | 2015-09-03 | 5 | -24/+33 | |
| | | | | | | | | | | | | This commit adds a builtin for the dcbz instructions. Additionally the dcbt,dcbtst,dcbtls and icbtls instruction are changed to their actually form all taking one additional register in Asm.v. | |||||
* | | Added builtin for the icbtls instruction. | Bernhard Schommer | 2015-09-02 | 6 | -0/+19 | |
| | | | | | | | | This commit adds a builtin for the icbtls instruction. | |||||
* | | Allow only CT values of 0 and 2 in dcbtls instruction. | Bernhard Schommer | 2015-09-02 | 2 | -4/+4 | |
| | | | | | | | | | | The dcbtls instruction allows only the values 0 and 2 according to the PPC Isa. | |||||
* | | 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 | |
|\ |