For linking purposes, in codegen/asm.js asm.address, I store an address in two numbers to circumvent the limitation of the Number representation. It allows me to handle 64 bit addresses by doing the proper operations on the "splitted" address. However, once bootstrapped, the integer representation of numbers will only have 30 bits to represent an address value. I am thinking of further splitting the address into four 16 bits integer for the internal representation.
Would you guys have a better idea?
Erick
Afficher les réponses par date
You could also do it with an array of bytes as I did in our V8 extensions. This would perhaps be more compatible with that code (and it works on both 32/64 bit machines). Once the bootstrap is done, we can define a native object to represent 64 bit integers/pointers and eliminate this performance problem.
- Maxime
On 10-12-17 08:04 PM, Erick Lavoie wrote:
For linking purposes, in codegen/asm.js asm.address, I store an address in two numbers to circumvent the limitation of the Number representation. It allows me to handle 64 bit addresses by doing the proper operations on the "splitted" address. However, once bootstrapped, the integer representation of numbers will only have 30 bits to represent an address value. I am thinking of further splitting the address into four 16 bits integer for the internal representation.
Would you guys have a better idea?
Erick _______________________________________________ Tachyon-list mailing list Tachyon-list@iro.umontreal.ca https://webmail.iro.umontreal.ca/mailman/listinfo/tachyon-list