Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Nov 12, 2014
  1. @schwahn @liblit

    Added support for GCC builtin function __builtin_bswap16

    schwahn authored liblit committed
Commits on Nov 10, 2014
  1. @liblit
  2. @liblit

    Minor spacing tweak.

    liblit authored
  3. @liblit

    Teach CIL about a large suite of "__atomic_*" builtins that were

    liblit authored
    recently added to gcc.  The updated collection should now be current
    as of gcc-4.9.2.
Commits on Jul 2, 2014
  1. @stephenrkell @kerneis

    Support gnu_inline attribute

    stephenrkell authored kerneis committed
    Fixes bug where this attribute would be attached to function return
    types instead of the whole decl, provoking compiler warnings.
Commits on Jul 1, 2014
  1. @kerneis

    Safer fix for Pretty module

    kerneis authored
    Thanks to Xavier Leroy.
Commits on Jun 30, 2014
  1. @kerneis

    Fix Pretty module for OCaml 4.02

    kerneis authored
    Pretty.gprintf uses the internal representation of format6 strings,
    which has changed in OCaml 4.02. We check the version number and
    extract the format string accordingly.
  2. @kerneis

    Expose parsed OCaml version

    kerneis authored
  3. @kerneis
Commits on Jun 19, 2014
  1. @kerneis

    Add package directive to App::Cilly::CilConfig

    kerneis authored
    This enables dependencies to be calculated properly for RPM package.
    Thanks to Richard W.M. Jones.
Commits on May 29, 2014
  1. @kerneis

    Merge type declaration attributes into type definitions

    kerneis authored
    As a nice side-effect, this fixes the annoying duplication
    of GCompTag nodes in CIL internal representation.
    Closes #137.
Commits on May 27, 2014
  1. @kerneis

    Remove unused variables

    kerneis authored
  2. @kerneis
  3. @kerneis
  4. @kerneis

    Print struct, union and enum declaration attributes

    kerneis authored
    GCC allows attributes on type declarations as well as type definitions.
    It probably does not make any difference to display them in both places,
    but might have an impact when there is only a declaration.
    Closes #137.
Commits on May 26, 2014
  1. @kerneis
  2. @kerneis
  3. @kerneis

    Name anonymous structs based on their structure

    kerneis authored
    Quoting Stephen Kell's bug report:
        CIL gives names to anonymous structure or union types, such as in
        the following.
        typedef struct { double r; double i; } complex;
        CIL will give it a name such as __anonstruct_complex_nn, where 'nn'
        is a number chosen serially. So, the same header defining the same
        struct complex will generate different 'nn' in different compilation
        units, because of the different inclusion contexts.
        This is harmless in nearly all applications of CIL. But in my case
        it causes a problem, because according to the C standard, types with
        different tags are not compatible (section 6.2.7), whereas before
        the CIL transformation, they were compatible. It's important for my
        tool that compatibility across compilation units is preserved; I
        therefore have to erase the 'nn' to work around this behaviour.
    Instead of generating an arbitrary index for anonymous structures, this
    patch uses hash of the structure content as a hint. This is not
    bullet-proof because we are still using increasing indexes in case of
    hash collisions, and we do not normalize the structure before hashing.
    But it should be good enough for most puposes.
    Closes #10.
    Thanks to Stephen Kell for testing and improving this patch.
Commits on Mar 10, 2014
  1. @kerneis

    Build doc on travis

    kerneis authored
  2. @kerneis
  3. @kerneis

    Verbose regtest output for Travis CI

    kerneis authored
    `make test VERBOSE=1` to get a dump of test/cil.log in case of failure.
  4. @kerneis

    Travis CI build scripts

    kerneis authored
  5. @kerneis

    Fix over-quoting of compiler argument strings

    kerneis authored
    Closes #7. Thanks to Stephen Kell.
  6. @kerneis

    Represent functions without arguments in typsig

    kerneis authored
    This is an incompatible API change.
    It allows to distinguish the types of f() and
    f(void), which are treated differently in several
    places of the C standard.
    Closes #8, thanks to Stephen Kell.
  7. @kerneis

    util: add list_map_opt to lift list_map over options

    kerneis authored
    This is particularly useful to deal with TFun's second parameter
    (optional list of arguments).
  8. @kerneis

    C11 static union implicit initialization test case

    kerneis authored
    Import test case for issue #144 from GCC torture suite.  This bug is
    closed-wont-fix because CIL does not support C11.
Commits on Jan 4, 2014
  1. @kerneis
Commits on Nov 6, 2013
  1. @pmundkur @kerneis

    Fix make test on FreeBSD.

    pmundkur authored kerneis committed
    CC=clang detected by top makefile needs to be passed on, and gmake is
    needed. Also fix 'make clean' to clean objects created by tests.
Commits on Oct 28, 2013
  1. @pmundkur @kerneis

    Standalone App::Cilly::CilCompiler perl module

    pmundkur authored kerneis committed
    Extract out perl package App::Cilly::CilCompiler from cilly driver into a
    standalone perl module reusable from other CIL apps.  Used for instance in
Commits on Oct 25, 2013
  1. @kerneis

    Remove duplicated comment in doc

    kerneis authored
    Thanks to Pietro Braione.
Commits on Oct 20, 2013
  1. @pmundkur
  2. @pmundkur

    Regenerate configure.

    pmundkur authored
  3. @pmundkur
  4. @pmundkur
  5. @pmundkur

    Whitespace fixes.

    pmundkur authored
Something went wrong with that request. Please try again.