Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!cwjcc!hal!nic.MR.NET!tank!mimsy!chris From: chris@mimsy.UUCP (Chris Torek) Newsgroups: comp.lang.c Subject: Re: The world is not ready for 'volatile' Keywords: volatile optimization Message-ID: <15166@mimsy.UUCP> Date: 26 Dec 88 05:47:08 GMT References: <141@bms-at.UUCP> <275@twwells.uucp> Organization: U of Maryland, Dept. of Computer Science, Coll. Pk., MD 20742 Lines: 24 In article <275@twwells.uucp> bill@twwells.uucp (T. William Wells) writes: >... Because of this, any pointed to variable, absent the possibility of >using the volatile keyword, must be considered volatile. Or, you can put up with a long, slow, tortuous (and perhaps torturous) inter-module analysis phase that picks up those cases that it can, and assumes the worst (volatility) for those it cannot. We do not know how to do this well (nor fast) now, but I predict that in a number of years, we will---just as compilers are (only just now) starting to do decent register allocation. Incidentally, Mr. Grandi% has a point (which I might note that I myself made not too long ago) about `register': It implies not-volatile and not-aliased; and it does so in a way that the compiler can reasonably enforce. It is conceivable that one could make use of the existing keyword (and overload C keywords yet further) for optimisations it does not now allow. [Please note that I make no judgement as to tastefulness, desirability, etc.! I got into this last time because someone mistook a hypothetical argument for a real one.] ----- % I do hope I spelled your last name right. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci Dept (+1 301 454 7163) Domain: chris@mimsy.umd.edu Path: uunet!mimsy!chris