*** expr.c.orig Wed Jun 21 14:52:47 1995 --- expr.c Wed Jun 21 14:54:03 1995 *************** *** 4624,4632 **** /* Convert the integer argument to a type the same size as a pointer so the multiply won't overflow spuriously. */ if (TYPE_PRECISION (index_type) != POINTER_SIZE) index = convert (type_for_size (POINTER_SIZE, 0), index); ! if (TREE_CODE (size) != INTEGER_CST && contains_placeholder_p (size)) size = build (WITH_RECORD_EXPR, sizetype, size, exp); --- 4624,4636 ---- /* Convert the integer argument to a type the same size as a pointer so the multiply won't overflow spuriously. */ + #if 0 if (TYPE_PRECISION (index_type) != POINTER_SIZE) index = convert (type_for_size (POINTER_SIZE, 0), index); ! #else ! if (TYPE_MODE (index_type) != Pmode) ! index = convert (type_for_mode (Pmode, 0), index); ! #endif if (TREE_CODE (size) != INTEGER_CST && contains_placeholder_p (size)) size = build (WITH_RECORD_EXPR, sizetype, size, exp); *** real.c.orig Wed Jun 21 14:58:16 1995 --- real.c Wed Jun 21 14:54:59 1995 *************** *** 25,30 **** --- 25,32 ---- #include "config.h" #include "tree.h" + #ifndef EXTERNAL_REAL_EMULATION + #ifndef errno extern int errno; #endif *************** *** 6112,6114 **** --- 6114,6118 ---- abort (); } } + + #endif /* not EXTERNAL_REAL_EMULATION */ *** rtl.c.orig Wed Jun 21 14:57:27 1995 --- rtl.c Wed Jun 21 14:56:47 1995 *************** *** 812,817 **** --- 812,830 ---- } #endif + #ifdef BITS_PER_FLOAT_BYTE + if (BITS_PER_UNIT != BITS_PER_FLOAT_BYTE) + for (mode = VOIDmode; (int) mode < (int) MAX_MACHINE_MODE; + mode = (enum machine_mode) ((int) mode + 1)) + if (GET_MODE_CLASS (mode) == MODE_FLOAT) + { + mode_size [mode] = mode_size [mode] * BITS_PER_FLOAT_BYTE + / BITS_PER_UNIT; + mode_unit_size [mode] = mode_unit_size [mode] * BITS_PER_FLOAT_BYTE + / BITS_PER_UNIT; + } + #endif + #ifdef EXTRA_CC_MODES for (i = (int) CCmode + 1; i < (int) MAX_MACHINE_MODE; i++) {