Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] The tag bit
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Marcin 'Qrczak' Kowalczyk <qrczak@k...>
Subject: Re: [Caml-list] The tag bit
W li¶cie z czw, 12-08-2004, godz. 16:31 +0200, Bauer, Christoph napisa³:

> why is the tag bit for a int/pointer is stored in and not next to a
> int/pointer.  
> Isn't it possible to divide the memory in blocks of 33 (65 on 64 bit
> machines)  
> Words and the first Word contains all the tag bits?

Value passing would be more complicated.

If you apply a function to 2 arguments, now you pass it 2 words. In your
scheme you would have to find and pass it 2 words plus 2 tag bits in a
3rd register.

Currently a list of ints uses 3 words per element (a block whose first
word is the header, and remaining words are head and tail). With your
scheme it would be 4 words, i.e. 1/3 larger, not 1/32 larger.

-- 
   __("<         Marcin Kowalczyk
   \__/       qrczak@knm.org.pl
    ^^     http://qrnik.knm.org.pl/~qrczak/

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners