forked from boostorg/fusion
added code to peek into assembler
[SVN r36088]
This commit is contained in:
@ -75,6 +75,12 @@ namespace
|
|||||||
<< test::measure<accumulator<int> >(seq, repeats)
|
<< test::measure<accumulator<int> >(seq, repeats)
|
||||||
<< std::endl;
|
<< std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <typename T>
|
||||||
|
void test_assembler(T const& seq)
|
||||||
|
{
|
||||||
|
test::live_code = boost::fusion::accumulate(seq, 0, poly_add());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// We'll initialize the sequences from numeric strings that
|
// We'll initialize the sequences from numeric strings that
|
||||||
@ -155,6 +161,9 @@ int main()
|
|||||||
measure(lmedium, "medium list time: ", repeats);
|
measure(lmedium, "medium list time: ", repeats);
|
||||||
measure(vbig, "big vector time: ", repeats);
|
measure(vbig, "big vector time: ", repeats);
|
||||||
measure(lbig, "big list time: ", repeats);
|
measure(lbig, "big list time: ", repeats);
|
||||||
|
|
||||||
|
// Let's see how this looks in assembler
|
||||||
|
test_assembler(vmedium);
|
||||||
|
|
||||||
// This is ultimately responsible for preventing all the test code
|
// This is ultimately responsible for preventing all the test code
|
||||||
// from being optimized away. Change this to return 0 and you
|
// from being optimized away. Change this to return 0 and you
|
||||||
|
Reference in New Issue
Block a user