Permalink
Switch branches/tags
Nothing to show
Commits on Sep 2, 2018
  1. Add support for memory_struct.

    jcdutton committed Sep 2, 2018
    This will be used to add stucture to memory layout.
Commits on Sep 1, 2018
  1. Add test89.c

    jcdutton committed Sep 1, 2018
    Uses puts()
Commits on Aug 28, 2018
Commits on Aug 27, 2018
  1. Tidy some functions. Make them static.

    jcdutton committed Aug 27, 2018
    Remove some global variables.
  2. Use function hints to determing data types.

    jcdutton committed Aug 27, 2018
    e.g. from:  puts("Hello\n");
    We then know that 7 bytes in that ro data section are a C language character string.
Commits on Aug 12, 2018
Commits on Aug 11, 2018
  1. Add relocation information to memory stores.

    jcdutton committed Aug 11, 2018
    This will be used to track the origin of values.
    For example, to determine if the puts("string") parameter is a fixed constant string
    or derived from a different variable source. E.g. A table of messages.
Commits on Jul 28, 2018
  1. Update test_llvm_builder to generate:

    jcdutton committed Jul 28, 2018
    @.str = private unnamed_addr constant [8 x i8] c"Hello1\0A\00", align 1
    @.str.1 = private unnamed_addr constant [8 x i8] c"There2\0A\00", align 1
    
    ; Function Attrs: noinline nounwind optnone uwtable
    define i32 @test89() #0 {
      %1 = call i32 @puts(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i32 0, i32 0))
      %2 = call i32 @puts(i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i32 0, i32 0))
      ret i32 0
    }
    
    declare i32 @puts(i8*) #1
  2. Add sanity checks to hints file loading.

    jcdutton committed Jul 28, 2018
    Exit if it finds an unrecognised token.
Commits on Jun 24, 2018
  1. Add some sanity checks.

    jcdutton committed Jun 24, 2018
  2. Update tests.

    jcdutton committed Jun 24, 2018
  3. Read addend from relocation table entries.

    jcdutton committed Jun 24, 2018
    This is used for relocation table entries that point to the data section.
Commits on Jun 23, 2018
  1. Make type import recursive.

    jcdutton committed Jun 23, 2018
  2. Start implementing import_alien_type()

    jcdutton committed Jun 23, 2018
    We load a .bc file into module B.
    We create out LLVM output into module A.
    This allows us to import function declarations and types from module B into model A.
    Essentially, the modB->context is wrong on all module B types,
    so we need to re-write them with the modA->context.
    This requires us to re-register the types from module B into module A.
  3. Update external function calls to use declarations from a pre-compile…

    jcdutton committed Jun 23, 2018
    …d header module test110.bc
Commits on Jun 21, 2018
  1. Updated llvm_test.cpp

    jcdutton committed Jun 21, 2018
    Updated Eclipse project files.
Commits on Jun 18, 2018
  1. FIXUP test cases.

    jcdutton committed Jun 18, 2018
  2. Add version.hpp

    jcdutton committed Jun 18, 2018
    Used by cmake.
  3. Add LICENSE.

    jcdutton committed Jun 18, 2018
Commits on Jun 17, 2018
  1. Add library versioning.

    jcdutton committed Jun 17, 2018