GitLab will be upgraded on 30 Jan 2023 from 2.00 pm (AEDT) to 3.00 pm (AEDT). During the update, GitLab and Mattermost services will not be available. If you have any concerns with this, please talk to us at N110 (b) CSIT building.

  1. 06 Jun, 2017 1 commit
  2. 05 May, 2017 1 commit
    • Adam Nelson's avatar
      Prove local seq consistency for seq_cst_schedule · fb68640a
      Adam Nelson authored
      It's finally done! The first memory consistency proof in the formalization:
      a sequentially consistent schedule (one that always commits memory messages
      from the front of a thread's outbox queue) will always produce locally
      sequentially consistent semantics.
      
      Changes made in the process of this proof include:
      
      - Removed thread IDs and stack IDs from the thread and stack records;
        keeping up with invariants for them was pointless bookkeeping
      
      - Defined custom tactics multi_case_tac and rw_assums, which greatly
        reduced the size and complexity of some proofs
      
      - Added several new invariants to state_ok, including memory consistency
        invariants (committed messages are all distinct, no message can be in
        both the commit list and a thread's outbox, etc.)
      fb68640a
  3. 05 Apr, 2017 1 commit
  4. 03 Apr, 2017 1 commit
  5. 02 Apr, 2017 1 commit
  6. 01 Apr, 2017 1 commit
  7. 31 Mar, 2017 1 commit
  8. 30 Mar, 2017 1 commit
  9. 28 Mar, 2017 1 commit
  10. 26 Mar, 2017 1 commit
  11. 15 Mar, 2017 1 commit
  12. 11 Mar, 2017 1 commit
  13. 07 Mar, 2017 1 commit
    • Adam Nelson's avatar
      Parser improvements, comminst support · dea983cd
      Adam Nelson authored
      Removed a special case in the parser for FuncRefV constants, which
      required every SSA variable to have a known type. This required
      BundleParser to be rearranged to parse everything else before function
      bodies, making functions available to functions defined above them
      (something the spec requires, so that's progress!)
      
      Also added support for COMMINST in the parser.
      dea983cd
  14. 02 Mar, 2017 1 commit
    • Adam Nelson's avatar
      Split up uvmThreadSemantics, add 'ok' predicates · ff7ff016
      Adam Nelson authored
      uvmThreadSemantics was becoming a huge file that took several minutes
      to compile, so it's been split into uvmThreadsStacks and
      uvmInstructionSemantics.
      
      In uvmThreadsStacks, new 'thread_ok' and 'stack_ok' predicates define
      basic consistency requirements for thread and stack data structures.
      All functions in this file have also been proven to produce valid
      thread/stack structures when given valid input. This is a prerequisite
      for proving execution state homomorphisms.
      
      'thread_state' has been renamed to 'thread', and 'state_follows' has
      been renamed to 'thread_follows'.
      ff7ff016
  15. 24 Feb, 2017 1 commit
    • Adam Nelson's avatar
      Clean up exec_terminst, remove $-variables · d4b31059
      Adam Nelson authored
      The current version of the Mu specification does not use $-variables to
      pass return values from terminsts to the normal destination of an EXC
      clause, instead allowing terminsts to have normal SSA return values
      that may be referenced in the EXC clause. This commit updates the
      formalism to match.
      
      Several other refactorings are included, such as making exec_terminst
      only return modified stacks, using a simpler representation of common
      instructions, and defining prefix/infix operators for SSA variables and
      registers in HOL.
      d4b31059
  16. 22 Feb, 2017 1 commit
  17. 16 Feb, 2017 1 commit
  18. 07 Feb, 2017 1 commit
    • Adam Nelson's avatar
      Support for spawning new threads · 4732dc3b
      Adam Nelson authored
      The NEWTHREAD instruction isn't parsed yet, but its associated memory message is
      now supported, and the scheduler has been modified to support multiple threads.
      
      thread_states are now generated on-demand when they are first executed, provided
      there is an associated DoNewThread memory action and its stack ID can be
      resolved. This required the 'tid' field of 'Message' to be changed to a
      'thread_id option', as there must be an initial DoNewThread action that is not
      generated by any thread ID.
      
      The THROW instruction and EXC resume_values have also been updated to have only
      one argument, to match the spec.
      4732dc3b
  19. 01 Feb, 2017 1 commit
    • Alexander Soen's avatar
      Change list translation method · 2d935438
      Alexander Soen authored
      Translation method now uses an intermediary type datastructure.
      It is similar to the previous method which was done in two stages.
      
      To do:
        - Clean up code base
        - Add abstractions
        - Fix the testing script
      2d935438
  20. 27 Jan, 2017 2 commits
    • Alexander Soen's avatar
      Add translate_interm tests · 99edb424
      Alexander Soen authored
      99edb424
    • Alexander Soen's avatar
      Change translation method · ed21b02d
      Alexander Soen authored
      The translation method has been changed into two phases. The first is to
      determine the final type of what the translated term would be. The
      second, is with this type information, to create the final translated
      term.
      
      To do:
        -- Implement abstractions for translation
      ed21b02d
  21. 24 Jan, 2017 1 commit
  22. 23 Jan, 2017 2 commits
  23. 19 Jan, 2017 2 commits
  24. 18 Jan, 2017 1 commit
    • Alexander Soen's avatar
      Translation of sets of sets now possible · 2e0a1c69
      Alexander Soen authored
      Currently the expected translation function works for constants. This
      needs to be extended for other term types.
      
      The robustness of the type inference can also be improved on.
      Currently the new type is generated by appending new elements to a list
      which has an implicit ordering.
      2e0a1c69
  25. 12 Jan, 2017 4 commits
  26. 11 Jan, 2017 1 commit
  27. 10 Jan, 2017 4 commits
  28. 05 Jan, 2017 1 commit
  29. 04 Jan, 2017 2 commits
    • Alexander Soen's avatar
      a4aa50a8
    • Alexander Soen's avatar
      Add S-expression parser script · 398a7c0d
      Alexander Soen authored
      Script added parses an s-expression into a statement in the defined
      lanugage. Translation is successful. (Note: do notation in function
      definitions will not translate)
      
      To do:
        - Create test cases for the s-expression parser
        - Create a parser for enviromental variables
        - Create framework for inputing s-expressions in sml
      398a7c0d
  30. 03 Jan, 2017 1 commit