Hi, When I add a pointer (PSImode) with an int (HImode) (ex: sp-=cnt) , gcc expands the signed int by zero_extend'ing the int and then adding both PSI values (instead of sign extending). How should I fix this ? POINTERS_EXTEND_UNSIGNED is 0. And what is the difference between ptr_mode and Pmode ? thanks, Aurélien