On Sat, Jun 30, 2012 at 1:46 PM, Stefan Weil <s...@weilnetz.de> wrote: > Am 30.06.2012 14:16, schrieb Dunrong Huang: > >> 2012/6/30 Stefan Weil <s...@weilnetz.de>: >>> >>> commit c4baa0503d9623f1ce891f525ccd140c598bc29a improved SSE table type >>> safety which now raises compiler errors when latest QEMU was configured with >>> --enable-debug. >> >> The error occurs when building with --enable-werror, which is default >> option, not --enable-debug. > > > The default configuration (configure called without any options) > compiles perfectly (no warnings, no errors) on x86_64 or i386 > hosts. > > I only see warnings or errors when QEMU was configured with > --enable-debug-tcg. Option --enable-debug includes --enable-debug-tcg, > so it triggers the same warnings or errors. > > Stefan H., I suggest running some of the buildbots (for example > default_x86_64_debian_6_0 and default_i386_debian_6_0) with --enable-debug. > That option provides better code checks for TCG related code, > and it also results in much shorter build times because compiler > optimizations are disabled. gcc won't detect some kinds of errors > which it only detects when it optimizes the code - that's why > using --enable-debug for all buildbots would not be reasonable. > > Blue, are you planning to apply my patch as it is, or would you > prefer an implementation using if / else blocks instead of > arrays of function pointers?
I looked briefly at how the tables could be converted switch() cases, but it looks like there would be a need for some refactoring if we don't want to just duplicate the common code. Your patch could still be used as the first step regardless. > > Regards, > > Stefan W. >