Re: generic assembly language available?

jacob navia <jacob@jacob.remcomp.fr>
23 Aug 2004 12:14:42 -0400

          From comp.compilers

Related articles
[2 earlier articles]
Re: generic assembly language available? gopi@sankhya.com (2004-07-14)
Re: generic assembly language available? choksheak@yahoo.com (ChokSheak Lau) (2004-07-14)
Re: generic assembly language available? phil@ultimate.com (2004-07-15)
Re: generic assembly language available? arnold@skeeve.com (2004-07-15)
Re: generic assembly language available? gergoe@math.bme.hu (2004-07-17)
Re: generic assembly language available? bear@sonic.net (Ray Dillinger) (2004-08-09)
Re: generic assembly language available? jacob@jacob.remcomp.fr (jacob navia) (2004-08-23)
Re: generic assembly language available? brown@cs.bris.ac.uk (Julian Brown) (2004-08-25)
| List of all articles for this month |

From: jacob navia <jacob@jacob.remcomp.fr>
Newsgroups: comp.compilers
Date: 23 Aug 2004 12:14:42 -0400
Organization: Wanadoo, l'internet avec France Telecom
References: 04-07-018 04-07-038 04-07-040 04-08-045
Keywords: C, assembler, design
Posted-Date: 23 Aug 2004 12:14:41 EDT

Ray Dillinger wrote:
> ChokSheak Lau wrote:
>
>>I think what you have is the closest to what I am looking for
>>(except it is not freeware), anyway, i am not sure whether the
>>idea of having a generic low-level language (much much lower
>>than C) is possible at all or not.
>
>
> For what it's worth, there is no problem with using C as a misspelled
> assembly language. Since C is semantically similar to a superset of
> assemby, you can have just about any feature you'd want in a "generic
> assembly language" just by deciding which features of C you will not
> use.
>
> I did this a couple of years ago for a LISP compiler that emitted C
> code; the code it emitted used goto's and handled its stack
> explicitly. It used no C procedure calls or other C-stack based
> control structures and it was effectively a generic assembly language.
>
> Bear
> [Lots of languages use C as a portable low-level back end. -John]


I would say that an assembler that doesn't know about overflow is
lacking some features... :-)


I added this missing feature to lcc-win32, a "portable assembler" for
many languages (Eiffel, objective C, Heron, C++ and maybe others)


All in all I think C should introduce this feture:


a*=b;
if (_overflow())
// overflow handling.
In x86 machines, intrinsic functions that get translated to
single machine instructions are handy, like _rdtsc() that will
return a 64 bit integer with the cycles of the processor, or others


Post a followup to this message

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