From: Sandeep D. <sa...@wi...> - 2001-10-20 19:05:16
|
Indeed the assembler and the linker has much room for improvement. With the current situation though, as much as I would like to make these changes I just don't have the time.... To this wishlist I would add , linker with overlaying capability assemler & linker suport for more portable object file formats (e.g. OMF51 .. or ELF)..... The GNU linker is not very capable of handling the multiple address spaces it will have problems when multiple sections start @ the same address for example, a large amount of hackery would be required to handle this....(I think) A nice retargettable assembler written from scratch would be perfect :) Sandeep > -----Original Message----- > From: sdc...@li... > [mailto:sdc...@li...]On Behalf Of Eric Norum > Sent: Wednesday, October 17, 2001 7:21 AM > Cc: sdc...@li... > Subject: [Sdcc-user] Better assembler? > > > An improvement I'd like to see is an assembler which could properly > handle span-dependent instructions. > > i.e. The compiler could could just put out: > jmp foo > or > jc foo > or > cjmpne a,#5,bar > or > djmpnz r5,bletch > > The assembler would then properly convert these to > sjmp foo or ljmp foo > jc foo or jnc lxxx; ljmp foo; lxxx: > cjne a,#5,bar or cjne a,#5,lxxxx; sjmp lyyyy; > lxxx: ljmp bar; > lyyyy: > djnz r5, bletch or djnz r5,lxxxx; sjmp lyyyy; lxxxx: ljmp bletch; > lyyyy: > > The effort to do this is not trivial (it turns out to be an > NP complete > problem), but is well documented (the classic paper on the subject is, > ``Assembling Code for Machines with Span-Dependent > Instructions'', T. G. > Syzmanski, Communications of the ACM, April, 1978). From the date on > this papter you can see that the problem has been solved for a long > time! > > There are different ways this could be approached. > 1) Start from scratch to write an assembler based on the above > reference. > 2) Add an 8051 target to gas, and then use gld as a linker. > > Comments, suggestions??? > Is anyone else out there looking in to this? > -- > Eric Norum eri...@us... > Department of Electrical Engineering Phone: (306) 966-5394 > University of Saskatchewan FAX: (306) 966-5407 > Saskatoon, Canada. > > _______________________________________________ > Sdcc-user mailing list > Sdc...@li... > https://lists.sourceforge.net/lists/listinfo/sdcc-user > |