The scheme is currently
...001 -> immediate int
...010 -> immediate char
...100 -> immediate double
But with 64 bits, 62 remaining for immediate char, that makes many char,
well too many compared to Unicode requirements...
What about swapping pattern for char and double? I know it complicates a
little bit the 32 <-> 64 image translation, but this gains one more bit for
immediate double exponent that is otherwise unused for char.
Also, there is room for more immediate values, for example a single
precision float.
Is there any interest?