If, as we agree, there is no definite answer, then how is the beginning BMax-user to choose between the many sugestions given here?
In my opinion optimization on this level is superfluous. The most significant factor is code readability. So use that which you think is most readable. That is hard in assembler (especialy in these "pipeline"days) and in a basic-language it's extreemly difficult.
No it's much easier in a more abstract language, because you can rely on the compiler to do the low-level optimization - all you have to provide is algorithms of as low a time complexity as possible. How many buscycles does it take to calculate cos (220)?
It doesn't matter. Besides which it varies by FPU, and whether it can be executed in parallel. In which case benchmarking (I know) a piece of code, you want to optimize "for speed", is not such a bad idea.
It is if it's already fast enough. If, in a tight loop, on your computer, something is faster then something else, it doesn't matter wether it's because cache, LUT or FPU; at least it proofes that in some cases that instruction is the fastest.
Which is a fairly useless proof, unless you're only writting code specificly for your computer. Chances are, that in some more "extended" loop, that instruction will contribute to faster code.
No. the larger the loop, and the more objects you have in it, the more likely you are to get a cache miss.