Path: csiph.com!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!news.linkpendium.com!news.linkpendium.com!news.iecc.com!.POSTED!nerds-end From: Ivan Godard Newsgroups: comp.compilers Subject: Re: Safe Pointers at the Intermediate Language or Hardware Level Date: Mon, 10 Feb 2014 20:45:46 -0800 Organization: A noiseless patient Spider Lines: 32 Sender: news@iecc.com Approved: comp.compilers@iecc.com Message-ID: <14-02-010@comp.compilers> References: <14-02-007@comp.compilers> NNTP-Posting-Host: news.iecc.com Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: miucha.iecc.com 1392097334 64330 64.57.183.58 (11 Feb 2014 05:42:14 GMT) X-Complaints-To: abuse@iecc.com NNTP-Posting-Date: Tue, 11 Feb 2014 05:42:14 +0000 (UTC) Keywords: design, debug Posted-Date: 11 Feb 2014 00:42:14 EST X-submission-address: compilers@iecc.com X-moderator-address: compilers-request@iecc.com X-FAQ-and-archives: http://compilers.iecc.com Xref: csiph.com comp.compilers:1089 On 2/10/2014 9:11 AM, seimarao@gmail.com wrote: > Hi, > > Its been a long time since Java & .Net introduced safe address > types to the computing world. > > My question is have we settled on what could be a proper representation > for safe pointers ? > > Some Mainframes like the 390 have historically supported safe pointers, > I remember. > > Sincerely, > Seima Rao. > [I looked at my S/390 Principles of Operation, and I see a bunch of stuff > for tracing, but nothing that looks like safe pointers. I'd think it was > hardware dependent, e.g., if a machine has a fairly clean and efficient > trap for an unmapped zero address, you'd use that, but if it doesn't, you'd > do something else. -John] > I'm an architect on the team doing the Mill CPU architecture (ootbcomp.com/docs). We would love to do a full-blown capability system, but regretfully have decided that's not viable as a commercial product. A safe pointer (cap) is more than 64 bits, and people would refuse to repeat the pain of the 32- to 64-bit migration. And most programs violate safety (and language standards, but that's another issue), and it's hard to make a sale when the customers keep saying "It worked on Intel!". Sad.