[Bug c++/34774] [4.1/4.2 Regression] templates, enumerations, overflow, ice
tbptbp at gmail dot com
gcc-bugzilla@gcc.gnu.org
Wed Feb 13 17:22:00 GMT 2008
------- Comment #18 from tbptbp at gmail dot com 2008-02-13 17:21 -------
Ah ah!
[svn pull... build...]
Sadly it makes no difference yet, most certainly because of all the kludges i
had to stuff in: out of the 2213 tests (from the ucb-corpus for +,-,*,/,sqrt)
there's still 3 of them (all additions) that g++ refuses to 'fold' completly
mov 0x200627(%rip),%edx # 600c88 <metafloat::float_t<2097152u, 131,
0u, (metafloat::category_t)0>::fp32>
mov 0x200626(%rip),%esi # 600c90 <metafloat::float_t<8353000u, 147,
0u, (metafloat::category_t)0>::fp32>
mov 0x200616(%rip),%edx # 600c8c <metafloat::float_t<11400u, 147, 0u,
(metafloat::category_t)0>::fp32>
So close to perfection...
And then the compile-time 'raytracer' is still fubar :)
Compilation is definitely faster, but i only have a debian 4.3 snapshot to
compare against and i suppose some checkings are enabled.
I guess i'll have to get back to it, remove all those ugly workarounds and see
if it can handle it now.
Many thanks for your efforts.
PS:
http://ompf.org/stuff/metafloat/
http://ompf.org/stuff/metafloat/dist/ <-- tarball here
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34774
More information about the Gcc-bugs
mailing list