Related articles |
---|
Safe Pointers at the Intermediate Language or Hardware Level seimarao@gmail.com (2014-02-10) |
Re: Safe Pointers at the Intermediate Language or Hardware Level flaps@dgp.toronto.edu (2014-02-11) |
Re: Safe Pointers at the Intermediate Language or Hardware Level gah@ugcs.caltech.edu (glen herrmannsfeldt) (2014-02-11) |
Re: Safe Pointers at the Intermediate Language or Hardware Level ivan@ootbcomp.com (Ivan Godard) (2014-02-10) |
Re: Safe Pointers at the Intermediate Language or Hardware Level wclodius@earthlink.net (2014-02-10) |
Re: Safe Pointers at the Intermediate Language or Hardware Level seimarao@gmail.com (Seima Rao) (2014-02-11) |
Re: Safe Pointers at the Intermediate Language or Hardware Level ivan@ootbcomp.com (Ivan Godard) (2014-02-12) |
From: | Ivan Godard <ivan@ootbcomp.com> |
Newsgroups: | comp.compilers |
Date: | Wed, 12 Feb 2014 14:19:03 -0800 |
Organization: | A noiseless patient Spider |
References: | 14-02-012 |
Keywords: | design, debug |
Posted-Date: | 13 Feb 2014 00:27:00 EST |
On 2/11/2014 1:05 AM, Seima Rao wrote:
>> 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!".
>
> I have a proposal of my own although, I am not sure about the cons
> and hence would like to discuss on this forum.
>
>
> i) All pointers have the same type called pointer_t.
>
> ii) A pointer_t contains the address of a struct whose contents are
> the information relevant to what the pointer is pointing to including
> the type of the element.
>
> There are a lot of questions but the one I am worried about currently
> is whether it is possible to have direct HW support.
>
> Sincerely, Seima Rao.
You can do pretty much anything in hardware. However, the indirection
through the descriptor doubles the latency cost of the dereference and
increases cache demand. Also, keeping track of the type (and if the type
in the descriptor is to be useful then you would need to decorate every
value throughout with type information) is costly, especially as the
number of possible types is unbounded.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.