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?