cornell-zhang / heterocl

HeteroCL: A Multi-Paradigm Programming Infrastructure for Software-Defined Heterogeneous Computing
https://cornell-zhang.github.io/heterocl/
Apache License 2.0
322 stars 92 forks source link

[Refactor] Make Vivado HLS codegen more robust #91

Closed seanlatias closed 5 years ago

seanlatias commented 5 years ago

In this repo, the following changes are made.

  1. Fix adding two numbers with incorrect casting.
  2. No extra pointer casting for Load and Store.
  3. Now "Allocate" has the right data type.
  4. Correctly simplify the bit operations such as GetBit, GetSlice, etc.
  5. Fix incorrect simplification for loops with only one iteration.
  6. Replace "ap_int<32>" with "int".
  7. Fix incorrect printing for tensors with only one element.
  8. Now users can specify the function name in the front-end API.
  9. Simplify Set/GetSlice operation if the upper- and lower-bound are the same.
  10. Complete the implementation of all bit operations.