2 ms·
I don't do flash, but I was under the impression that there's some kind of compilation going on and ActionScript isn't just interpreted. How on earth does a mod
by pmjordan 17y ago
I don't do flash, but I was under the impression that there's some kind of compilation going on and ActionScript isn't just interpreted. How on earth does a modern compiler not optimise
a / 64
to
a >> 6
? I could understand it in a dynamically typed language, where a, and therefore the result, could be non-integer, but ActionScript seems to have static type declarations for variables.
- swolchok 17y agoThis isn't even "modern" in compiler terms, it's a simple peephole optimization. (grep through the IR, check for "X / 2^n", replace by "X >> n") To get it right when you have int a; int b = 64; a / b requires dataflow analysis so you can do constant propagation, copy propagation, and dead code elimination. This is more work to get right, but that's not a very good excuse for not at least doing the peephole optimization.