> Which ARM target has 16-bit int? > I don't see INT_TYPE_SIZE nor SHORT_TYPE_SIZE defined in config/arm/*, neither > BITS_PER_WORD, so all depends on UNITS_PER_WORD, which is 4 and thus short is > 16-bit and int is 32-bit.
Hmm, you are right - I messed up target triplets. With arm-linux-gnueabi I see 4 byte int and the testcase calls abort. However it is still missed optimization. I will check why we end up with different code than x86 LTO. Honza