The compiler says it is unable to find a spill register, dumps a bunch
of internal data, and then bails out because it is "confused". Actual
error messages are:
C-Source/DCalc-A.cpp:430: unable
to find a register to spill in class `AREG'
C-Source/DCalc-
A.cpp:430: this is the insn:
(insn 1964 1963 1968 (parallel[
(set (reg/v:SI 2 ecx [215])
(truncate:SI (lshiftrt:DI (mult:DI
(sign_extend:DI (reg:SI 486))
(sign_extend:DI (reg:SI 1 edx
[217])))
(const_int 32 [0x20]))))
(clobber (scratch:SI))
(clobber (reg:CC 17 flags))
] ) 264 {*smulsi3_highpart_insn}
(insn_list 1963 (insn_list:REG_DEP_ANTI 1955 (nil)))
(expr_list:REG_DEAD (reg:SI 1 edx [217])
(expr_list:REG_UNUSED (scratch:SI)
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil)))))
C-
Source/DCalc-A.cpp:430: confused by earlier errors, bailing
out
Attached is a zip file containing the program source, the
batch file I use to compile the program, and a batch file that contains
the command I use to invoke the batch file that compiles the
program.
Logged In: YES
user_id=722870
I forgot --- versions are g++ (GCC) 3.2.2 (mingw special 20030208-1)
Logged In: YES
user_id=11494
No attachment
Again, zip file containing supporting files
Logged In: YES
user_id=11494
Fixed in 3.4.1 and trunk.