From mboxrd@z Thu Jan 1 00:00:00 1970 Mime-Version: 1.0 (Apple Message framework v752.3) In-Reply-To: References: Content-Type: text/plain; charset=US-ASCII; delsp=yes; format=flowed Message-Id: <70260999-40A3-4298-9276-DC03BB4B514E@telus.net> Content-Transfer-Encoding: 7bit From: Paul Lalonde Subject: Re: [9fans] speaking of kenc Date: Fri, 4 May 2007 09:19:46 -0700 To: Fans of the OS Plan 9 from Bell Labs <9fans@cse.psu.edu> Topicbox-Message-UUID: 594b5292-ead2-11e9-9d60-3106f5b1d025 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On May 4, 2007, at 2:24 AM, C H Forsyth wrote: > if it's on (say) a DSP, it's a bit of a mixture of that and people > thinking that > language design stopped with C, so the language provides too little > scope for a compiler sensibly to do the work. This is the one that worries me most. Looking at the SPUs on Cell, kencc won't let me make decent code for them: the vast space of vector instructions requires extensive language extensions to use well. The overhead of a function call defeats the careful interleaving of those instructions. The Cell architecture specification includes considerable language extensions to handle this, but it's all implemented in a big GCC module. Ick. I write a lot of SPU code in my day job, and although C++'s class mechanisms are useless, the vector extensions are incredibly useful, and when combined with the C++ template mechanism (Yikes!) generates very good code. What this tells me is that C and C++ aren't good languages for SPU coding, and I should be thinking of something more clever that will make our tasks easier, but getting code done has trumped language work. This will be increasingly on my mind as my cell port comes online and I come to wanting my SPUs to work. > stunning (in every sense). i pick on that one because the DCRs > were ADDED relatively late > in the powerpc history. perhaps it was just a form of mid-life > crisis. FWIW, the DCRs are gone from Cell. Paul -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.3 (Darwin) iD8DBQFGO10jpJeHo/Fbu1wRAr9qAKDClCJTLbq/Ti0P1+YzyqBJIv7M8gCfRLdK JZw4qdBKIx7LzoVSHFdb2dw= =ey27 -----END PGP SIGNATURE-----