Multiplication and addition should be directly supported by VHDL (at least for integer types). I guess all you need to do is to replace the "power of" by multiplication. E.g. replace X^3 by X*X*X etc.
Of course it would be clever to use a local signal for this and multiply it by X each timer you need a higher potency.
Then again, calculating a polynomial with integer types doesn't make so much sense honestly. If you need a "real" (floating point) type, this will get much more complicated. If you're using fixed point numbers, a normalizing division is needed for each multiplication.
[Edit]
There is also a package for fixed point calculation named "IEEE.Fixed_Pkg"
In theory, also a package for float calculations exists, namely "IEEE.Float_Pkg", but not every tools supports it and even if so, it creates very large and very slow blocks.
[Edit]
Google shows that while Quartus can't synthesize real multiplications etc., there are so called megafunctions for this:
http://www.altera.com/literature/ug/ug_altfp_mfug.pdf