First post, by kjliew
Hi DOSBox devs,
The recompiling cpu core for x64 is not working for recent Intel CPUs when compiled under 64-bit Linux with gcc. It output the following error when CPU core switched to dynarec, either explicitly with "core=dynamic" in conf file or with "core=auto" and a PMODE (DOS/4GW) DOS games was started.
Exit to error: DRC64:gen_reg_memaddr:Unhandled memory reference, data=0x7fa41a781206, diff=0x7fa4135e8b76
As you can see I had added extra outputs to check the data and diff values. My Ubuntu is 14.04LTS and gcc 4.8.4 from Ubuntu standard repositories. A similar bug had also been filed by others on sourceforge.net
http://sourceforge.net/p/dosbox/bugs/413/
An important note for the devs, this only happens with newer Intel CPUs. It *DOES NOT* repro on older Core 2 based CPUs that I have access to. Here's the CPUs I have tried:
Core 2 E6400 (Conroe) - OK
Core 2 E8400 (Wolfdale) - OK
Core 2 Q9400 (Yorkfield) - OK
AMD C-60 - OK
Intel Celeron 847 (Sandybridge) - FAILED
Intel Core i3-4010u (Haswell) - FAILED