Bugs item #1762626, was opened at 2007-07-28 04:20
Message generated for change (Tracker Item Submitted) made by Item Submitter
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1762626&group_id=599
Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: pic14 target
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Nobody/Anonymous (nobody)
Summary: PIC: Incorrect register assignment
Initial Comment:
Compiler generates incorrect function flow and thus assigns incorrect registers to local variables.
When calling function a() first, output is correct, however when calling function c() first, the c() will get register r0x1000, which is already used in function a(). (c() will be called through b() and b() through a(), and c() will destroy a()'s data)
sdcc -mpic14 -p16f88 test.c
tested on today's snapshot and 2.7.0
email: mdemin@...
Martin Demin
----------------------------------------------------------------------
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1762626&group_id=599