Hello all,
I have an issue with BImode.
I am working on a backend port for a machine with a 1-bit boolean
register file, to hold boolean
variables. [gcc 9.2.0]
I tried following very simple piece of code on it:
_Bool check_test(int a, int b)
{
_Bool check = (a > b) ;
return(check) ;
}
Then, when I look at the first step of RTL mapping (check_test2.c.233*),
I see following statement:
(insn 10 9 11 2 (set (reg:QI 79)
(reg:BI 81)) "check_test2.c":3:7 -1
(nil))
Now the backend cannot handle that. A 'set' for the backend, requires
the source and destination
type to be identical, which they are not.
I traced this down, and, ultimately, I found that in 'tree.h' , there is
no such thing as a BI type.
Q. How should I resolve this ?. There seems to be an issue with the
support of the BI type, and
I dont understand it well enough to know what is going on.
Best Regards,
Henri.