On Fri, 2004-08-20 at 17:55, Robert Mykland wrote:> At 05:09 PM 8/20/2004, Chris Lattner wrote:
> >
> >If you're interested in the plans, they are described in some
detail here:
> >http://nondot.org/sabre/LLVMNotes/TypeSystemChanges.txt
> >
> >Note that there is no concrete timeline for this to happen, it
basically
> >depends on when someone is ambitious enough to start working on it.
> >
> >In any case, both signed and unsigned 8-bit constants can be written
out
> >in a single byte. Again, do you think it's worth special casing
this
> >though? Considering that we handle 8-bit strings specially already,
there
> >are not a ton of 8-bit constants with value >= 128.
>
> I'd rather that they not be treated specially. If char defaulted to
> unsigned char, there would be little reason to create this special case.
Actually, this isn't a very big deal. Its just handled in a switch()
statement now so I just make a couple more cases that handle the
UByteTyID and SByteTyID separately.
I'll probably include this in 1.4
> > > > This approach would have the added advantage of being able
to check to
> > > > see whether anything is a pointer type by checking bit 0 (1
= yes) and
> > > > deriving its dereferenced type (just subtract 1).
> >
> >I don't think this is a big win, the .bc reader doesn't have to
do much of
> >this.
>
> I know my reader does this. I'm not really sure how much time it
spends
> doing it. My little code generator spends a lot of time going back and
> forth between pointers and literal values when turning certain kinds of
> memory operations into data movement in the Ascenium array.
I will probably make this change in 1.4 to eek out a few more bytes of
savings from the file and since it will help Robert.
> > > > 4) Can files have multiple 0x01 headers? I've never
seen more than
> > > > one. If not, ditch this four bytes of unnecessary space per
file.
> > >
> > > I think the original plan was to have multiple modules in them
but this
> > seems
> > > to have gone by the wayside. The result of linking two (or more)
> > modules is a
> > > single module so except in some really bizare corner cases the
need for
> > > multiple modules would go away. I suppose we could get rid of the
block id
> > > field for the file. I'll give this some thought and see if
Chris has any
> > > objections.
> >
> >I don't have any problem with removing it.
>
> Cool. Before you chop remember debug libraries.
Sorry, I'm missing the context here. Why would this affect debug
libraries?
Reid
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20040820/2fae433a/attachment.sig>