JulianKemmerer / PipelineC

A C-like hardware description language (HDL) adding high level synthesis(HLS)-like automatic pipelining as a language construct/compiler feature.
https://github.com/JulianKemmerer/PipelineC/wiki
GNU General Public License v3.0
606 stars 50 forks source link

Allow input pointer arguments to be used for output ports #132

Open JulianKemmerer opened 2 years ago

JulianKemmerer commented 2 years ago

Ex. as opposed to

typedef struct my_func_outputs_t{
  int x;
  int y;
}my_func_outputs_t;
my_func_outputs_t my_func(int a, int b)
{
  my_func_outputs_t o;
  o.x = a;
  o.y = b;
  return o;
}

do

void my_func(int a, int b, int* x, int* y)
{
  *x = a;
  *y = b;
}

Thanks suarezvictor and bartus for pushing for these ideas - I am still a little uneasy about it though :sweat_smile: