First-argument indexing - not taking effect

Hi, why does the first version below work without a choicepoint as intended, whereas the 2nd version has an unwanted choicepoint on e_weird?

I’m using SWI-Prolog version 8.5.10

e('1-0', 1).
e('0-1', 2).
e('1-1', 3).

works_without_choicepoint(X) :-
    atomic_list_concat([1, 0], '-', Arg),
    e(Arg, X).
    

e_weird(1-0, 1).
e_weird(0-1, 2).
e_weird(1-1, 3).

has_unwanted_choicepoint(X) :-
    Arg = 1-0,
    e_weird(Arg, X).

The first one is handled reliably using first argument indexing. The second should be handled using the JIT indexing, but this only triggers if there are sufficient clauses (I think >= 16 by default). In theory it should make a “deep index” on (-)/2 and then it might make a multi-argument index on the first two arguments (depending on the value distribution). This results in a combined hash that can be subject to hash collisions and determinism is thus not guaranteed.