Skip to content

Releases: pku-minic/koopa

Koopa v0.0.7

02 Jun 02:47
c97c0e1
Compare
Choose a tag to compare

Fixed

  • Some typos in the documentation.
  • Issue #3: A naming issue in Koopa to LLVM IR generator.

Koopa v0.0.6

12 Jan 06:13
e136aea
Compare
Choose a tag to compare

Changed

  • Added all subprojects in the examples directory as Cargo examples.

Fixed

  • Fault about generating allocations from raw programs in libkoopa.
  • Some deprecated and non-recommended uses in the source code.

Koopa v0.0.5

09 Mar 08:07
6e75fbe
Compare
Choose a tag to compare

Fixed

  • Fault about duplicate parameter names.
  • Fault about local symbol redefinition.

Koopa v0.0.4

23 Feb 07:58
2830a15
Compare
Choose a tag to compare

Added

  • Library crate libkoopa for C/C++ programs that require the Koopa IR framework.

Changed

  • Supported setting maximum variable name length in NameManager.

Fixed

  • Fault about creating/initializing Parser when error occurrs in Lexer.

Koopa v0.0.3

05 Jan 12:04
6a9c4dd
Compare
Choose a tag to compare

Changed

Brand new design with a lot of changes!

  • Replaced phi function with basic block parameters.
  • Using DataFlowGraph and Layout to manage values and basic blocks.
  • opt, front, back modules and all examples were updated.

Koopa v0.0.2

24 Dec 08:58
8d20e63
Compare
Choose a tag to compare

Added

  • More re-imports.
  • Example opt, brainfuck and interpreter.
  • Method Value::uses and iterator of Use.
  • Method Type::size.
  • Method Generator::new_with_visitor for visitors that has internal state.
  • ValueCursorMut for instruction list in basic blocks.

Changed

  • Replaced all debug_asserts with asserts.
  • Removed all unary operations.
  • Signature of method Driver::from_path and Generator::from_path.
  • Signature of method Value::replace_all_uses_with.

Fixed

  • Fault about generating branch instructions into LLVM IR.
  • Fault about creating file in Generator::from_path.
  • Fault about generating Koopa IR and LLVM IR.
  • Infinite loop problem in Builder::generate_local_symbol.
  • Fault about updating BasicBlockInner::preds.