I browsed through the Tilera Instruction Set and noticed it has only add, subtract, multiply, divide, and shifts. There is no mention of roots, powers, logs, etc.
I also noticed that SSE (in all flavors) does not have the latter mentioned instructions.
Both the Tilera and SSE are designed for math-based processing such as video encoding, so this has made me curious.
How would one perform one of these operations in such cases (Tilera & SSE [excluding regular scalar ops])?
To keep the hardware simple, they usually only implement the most basic and simple instructions that are most commonly used.
The most advanced functions are less commonly used and also take up a lot of silicon and die-space on the processor. Trig-functions, logs, powers, etc. are hard and expensive to implement.
In any case, nearly all special functions break down into basic operations (add/subtract/multiply/divide) so as long as you provide those, you can implement anything.
Vectorizing a special function is usually possible if there isn't too much data-dependent branching. As you can simply take the scalar implementation and replace everything with SIMD versions.