Bitfields problem

2009-12-11 Thread Jean Christophe Beyler
As I continue my work on the machine description file, I currently worked on the bitfields again to try to get a good code generation working. Right now, I've followed what was done in the ia64 for signed extractions : (define_insn extv [(set (match_operand:DI 0 gr_register_operand =r)

Re: Bitfields problem

2009-12-11 Thread Jean Christophe Beyler
Interestingly enough, if I do this instead: typedef struct sTest { int a:12; int b:20; int c:7; int d:15; }STest; int64_t bar2 (STest *a) { int64_t res = a-b; return res; } I get at the expand pass : (insn 6 5 7 3 struct3.c:27 (set (reg:SI 75) (mem/s:SI