qingyi-yan / POET

Other
1 stars 2 forks source link

CODE.Uop#(_,rhs=_) bug in collect_global_read #33

Open Samuel-Oglegba opened 1 year ago

Samuel-Oglegba commented 1 year ago

In collect_globalread having case: CODE.PtrAccess#(rhs=,) ... CODE.Uop#(,rhs=_) alongside is returning references to Uop code that are not memory references like PtrAccess.

Steps to Reproduce

input = Return#Bop#( "+", FunctionCall#( "XT_ALIGN", PtrAccess#( "target", "targetsize")), Uop#(  "-",  FunctionCall#("COMPAT_XT_ALIGN", "csize")));

collect_global_read(input);

Output ("target"PtrAccess#( "target", "targetsize") "csize"Uop#( "-", FunctionCall#( "COMPAT_XT_ALIGN", "csize"))

Expected Output without reference to the Uop ("target"PtrAccess#( "target", "targetsize") "csize")

qingyi-yan commented 1 year ago

You can fix it by changing the Uop#(_,rhs) to Uop#("*",rhs)

On Tue, Sep 5, 2023 at 6:10 PM Samuel-Oglegba @.***> wrote:

In collect_global_read having case: CODE.PtrAccess#(rhs=,) ... CODE.Uop#(,rhs=) alongside is returning references to Uop code that are not memory references like PtrAccess.

Steps to Reproduce

  • given the parsed output of the of this line of code: return XT_ALIGN(target->targetsize) - COMPAT_XT_ALIGN(csize);
  • Add the code below to a .pt file and run it

input = Return#Bop#( "+", FunctionCall#( "XT_ALIGN", PtrAccess#( "target", "targetsize")), Uop#( "-", FunctionCall#("COMPAT_XT_ALIGN", "csize")));

collect_global_read(input);

Output ("target"PtrAccess#( "target", "targetsize") "csize"Uop#( "-", FunctionCall#( "COMPAT_XT_ALIGN", "csize"))

Expected Output without reference to the Uop ("target"PtrAccess#( "target", "targetsize") "csize")

— Reply to this email directly, view it on GitHub https://github.com/qingyi-yan/POET/issues/33, or unsubscribe https://github.com/notifications/unsubscribe-auth/AA4A2JUEEX7V7XNSMGELAHDXY7EQLANCNFSM6AAAAAA4MRY664 . You are receiving this because you are subscribed to this thread.Message ID: @.***>