Re: Problem involved porting LCC to a 8 bit microcontroller

"toby" <toby@telegraphics.com.au>
8 Sep 2006 00:27:49 -0400

          From comp.compilers

Related articles
Problem involved porting LCC to a 8 bit microcontroller amker.cheng@gmail.com (2006-09-06)
Re: Problem involved porting LCC to a 8 bit microcontroller englere_geo@yahoo.com (Eric) (2006-09-08)
Re: Problem involved porting LCC to a 8 bit microcontroller tmk@netvision.net.il (Michael Tiomkin) (2006-09-08)
Re: Problem involved porting LCC to a 8 bit microcontroller toby@telegraphics.com.au (toby) (2006-09-08)
Re: Problem involved porting LCC to a 8 bit microcontroller gah@ugcs.caltech.edu (glen herrmannsfeldt) (2006-09-08)
Re: Problem involved porting LCC to a 8 bit microcontroller raffaele.salmaso@gmail.com (Raffaele Salmaso) (2006-09-08)
| List of all articles for this month |
From: "toby" <toby@telegraphics.com.au>
Newsgroups: comp.compilers
Date: 8 Sep 2006 00:27:49 -0400
Organization: http://groups.google.com
References: 06-09-007
Keywords: C, lcc
Posted-Date: 08 Sep 2006 00:27:49 EDT

amker.cheng@gmail.com wrote:
> Just a student project !Porting porting LCC to a 8 bit microcontroller
> with which char is 8 bit and int is 16bit.
> But I found in LCC character and short-integer actual arguments are
> always promoted to the coresponding type even in the presence of a
> prototype!(And does there any place in it did similar thing?)
> So I have to use 2 8bit regsters for a char type argument!This is
> unbearable here!
> I want to change the front end, but not sure. All I have to do is
> change codes for function declarations and definitions in decl.c?
> Further more , in arithmetric computing "char c1,c2; c1 = c1 + c2;"
> does lcc promote char into int? I doubt of it because there isn't an
> dag operator for ADDI1!


That's because in C all arithmetic (and argument passing) uses promoted
values. You can find some notes on a solution here
http://www.homebrewcpu.com/retargeting_lcc.htm
Searching past posts in this newsgroup may also help.


lcc's most comfortable on modern 32-bit architectures; it can be
awkward outside this sweet spot.



Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.