gcc

Issue #4753: Faster opcode dispatch on gcc

追記: typo修正。テストコードに余計な「r」が含まれてたのと、「PICコード」とか間抜けなこと書いてたのを。Issue #4753職場でも話題になったので。このパッチのコメントによると、threaded codeにしたほうが分岐予測が効果的に働き、15%-20%ほど速くなると…

g++の末尾再帰の最適化 (-foptimize-sibling-calls)

これを当てにできるなら、かなり Boost.Preprocessor 使わずにすむかもという。 #include <functional> #include <iostream> #include <cstddef> template<std::size_t Nrep_, typename Timpl_> struct iter { inline void operator()(Timpl_& op) const { op(Nrep_); iter<Nrep_ - 1, Timpl_>()(op); } }; template<typename Timpl_> struct iter<0, T…</typename></nrep_></std::size_t></cstddef></iostream></functional>