Re:Author of LuaJIT explains why compilers can't beat hand-c...
by CountHackulus on Friday May 27, 2011 @11:07AM
(#2591694)
That sounds like PL/X[1] to me. That language will let you do things that REALLY aren't advisable on most systems like specify pointer sizes (per variable), specify address mode (arbitrary blocks, functions, nested functions, per module, whatever), specify registers for any variable. Oh an my favourite, when calling a function, you can specify an arbitrary global label for it to return to.
Or of course you can write as cleanly as possible, let the compiler do the lion's share of the work, and fix up what you need to.
[1]http://en.wikipedia.org/wiki/PL/X and http://c2.com/cgi/wiki?PlsLanguage
Yes, the problem is that it starts to look like assembly at that point. With a whole bunch of notes on each variable and operation to let the compiler know about whether you care about specific aspects of the result of the operation. (See the 'restrict' keyword in C for an example of what I mean)