CSC455 - Compilers

Team: Peanut Butter Tortoise

"Slow and steady wins the race."

Team Members : Roles

  • Chetan Bhole : Team Lead, Developer, Tester
  • Stan Park : Tester, Reporter
  • Amal Fahad : Developer, GCC Guru

Project Vision

  • Eat peanut butter.
  • Beat hare.

Project Plan

Performance is secondary. The main goal is to try to have correct code.

The following is the current tentative plan:

  • Decide how we will fuse the code created by different team members.
  • Find bugs that were present in the system.
  • Rectify bugs.
  • Brainstorm for ideas for improving performance of the system.

Session Summaries


  • Time open: 300PM

    Developers: Stan


    • Merge updated VN and const prop
    • Make defuse and dead code marking more intelligent for arrays
    • Recheck some benchmarks

    Change log:

    • Updated Chetan's VN
    • Updated Amal's const prop
    • Modified find_uses():
      • When checking for the uses of an array, added comparison for base array equality
      • Made function calls a def kill for globals
      • Made function call with pass-by-ref a def kill
    • Modified defuse_list_el_t:
      • Added "int global" flag
      • Added "int array" flag
    • Modified dead_code_elim:
      • Removed auto-marking for array accesses
      • Added marking for global defs
    • trivia benchmark count: 76 -> 73

    Open issues:

    • jacobi, multiply, and sort benchmarks are unchanged

    Time close: 416PM

    -- StanPark - 29 Mar 2008


  • Time open: 500PM

    Developers: Chetan

    Change log:

    • Corrected value numbering to take care of global variables.
    • Removed a bug to now detect constants in the modify expression.
    • Created gimple output files for the given open test cases to analyse for optimization

    Open issues:

    • Will we need to take care of value numbering for functions other than printf and scanf for the test cases?

    Time close: 515PM

    -- ChetanBhole - 28 Mar 2008


  • Time open: 800PM

    Developers: Chetan, Stan


    • Merge code for open benchmarking.

    Change log:

    • Added Chetan's value numbering to Stan's. Due to bugs, benchmarks were produced using only Stan's code.

    Open issues:

    • Chetan has unresolved bugs in value numbering.

    Time close: 831PM

    -- StanPark - 26 Mar 2008

  • Time open: 700PM

    Attendees: Amal, Chetan, Stan

    Minute taker: Stan


    • Code merge for initial benchmarks


    • Use of VEC or linked lists.
    • Use of global structures for holding data flow information


    • AI[1] for Stan, Chetan: For initial benchmarking, use Stan's dead code and constant prop and Chetan's value numbering as well as running Stan's and Chetan's code bases separately.
    • Amal will try VEC but has Stan's code for linked lists if necessary.
    • Try to keep each pass as independent as possible for debugging purposes, so each pass will keep its own bookkeeping structures.
    • AI[2] for ALL: Fix bugs in all passes.

    Open issues:

    • DVN or SVN?
    • Fix bugs in all passes.
    • Additional optimizations?
    • Need more peanut butter.

    Time close: 751PM


  • Time open: 630PM

    Attendees: Chetan, Amal, Stan

    Minute taker: Stan


    • Who has working optimizations
    • Code merging


    • Chetan has value numbering. Bugs:
      • Doesn't include initial constants
      • Globals
      • Function parameters
    • Amal has constant prop. Bugs:
      • Constants only propagate from the immediate predecessor
    • Stan has dead code elimination. Bugs:
      • Immediately marks array accesses


    • None

    Open issues:

    • DVN or SVN?
    • Fix bugs in all passes.
    • Additional optimizations?
    • Need more peanut butter.

    Time close: 706PM

    -- StanPark - 25 Mar 2008


Tag and Naushad stole our idea of having a motto. And they may claim that we will claim that it is stolen. -- StanPark - 24 Mar 2008


Made this wiki page today. -- StanPark - 23 Mar 2008

Edit | Attach | Watch | Print version | History: r36 | r15 < r14 < r13 < r12 | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r13 - 2008-03-29 - StanPark
  • Edit
  • Attach
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding URCS? Send feedback