Related articles |
---|
Re: Java virtual machine as target language for C/C++ kik@zia.cray.com (1996-05-08) |
Re: Java virtual machine as target language for C/C++ pardo@cs.washington.edu (1996-05-19) |
Re: UNCOL pardo@cs.washington.edu (1996-05-21) |
Re: UNCOL patrick_d_logan@ccm.hf.intel.com (Patrick Logan) (1996-05-26) |
Re: UNCOL dmason@scs.ryerson.ca (1996-06-08) |
Re: UNCOL dave@occl-cam.demon.co.uk (Dave Lloyd) (1996-06-13) |
From: | Dave Lloyd <dave@occl-cam.demon.co.uk> |
Newsgroups: | comp.compilers |
Date: | 13 Jun 1996 20:08:56 -0400 |
Organization: | Compilers Central |
References: | 96-05-061 96-05-133 96-06-031 |
Keywords: | UNCOL, architecture |
Dave Mason <dmason@scs.ryerson.ca> wrote:
> An interesting point that is often overlooked in discussing UNCOLs is
> that producing good code for a range of destination machines is as
> hard as supporting the semantics of a range of source languages. We
> get seduced somewhat by the relative uniformity of available
> processors (the 386 is the register-poorest machine that we usually
> consider, and even it has 7 usable registers). I don't know how good
> a job even *my* intermediate form would do on say, a Transputer.
The 387 FP register file is more awkward as it is a push-down stack (8-deep and
tagged) with some unusual operations. I mention this as code for it is similar
to that for a Transputer. The Transputer is much easier as it is only 3-deep
often allowing the optimal sequence to be hard-coded in (3! ain't very big).
The T9000 (should they ever happen) is different still and can be treated as a
32-register 3-address machine with the primary registers hidden as part of the
micro-state synthesising a Harvard-style RISC machine.
So if you can cope well with a 387, you're home safe (*nothing* gives me as
much grief as the 387 FPU).
----------------------------------------------------------------------
Dave Lloyd Email: Dave@occl-cam.demon.co.uk
Oxford and Cambridge Compilers Ltd Phone: (44) 1223 572074
55 Brampton Rd, Cambridge CB1 3HJ, UK
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.