Original post: https://gcc.gnu.org/ml/gcc-patches/2017-04/msg01030.html
The attached patch fixes an issue for the msp430 target where the TYPE_SIZE of the __int20 type was set using the precision (20 bits) instead of the in-memory size (32 bits) of the type. This bug caused an ICE as reported in PR78849: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78849 The patch passed bootstrap and regression testing with no regressions on recent trunk (r247020) for x86_64-pc-linux-gnu. The patch passed regression testing with "-mcpu=msp430x/-mlarge" for msp430-elf on the gcc-6-branch (r247086). Trunk doesn't build with C++ support for msp430-elf which is why gcc-6-branch was used. If the patch is acceptable I would appreciate if someone could commit it for me as I don't have write access.
0001-Use-GET_MODE_BITSIZE-when-setting-TYPE_SIZE.patch
Description: Binary data