Implement - -a * const   -> a * -const - -a * -b      -> a * b - -a * (b - c) -> a * (c - b) - (a - b) * -c -> (b - a) * c
Implement
- -a * const   -> a * -const
- -a * -b      -> a * b
- -a * (b - c) -> a * (c - b)
- (a - b) * -c -> (b - a) * c

[r15778]

killbug2004/libfirm,libfirm/libfirm,libfirm/libfirm,davidgiven/libfirm,8l/libfirm,8l/libfirm,davidgiven/libfirm,killbug2004/libfirm,jonashaag/libfirm,MatzeB/libfirm,jonashaag/libfirm,jonashaag/libfirm,killbug2004/libfirm,MatzeB/libfirm,8l/libfirm,8l/libfirm,killbug2004/libfirm,libfirm/libfirm,MatzeB/libfirm,jonashaag/libfirm,8l/libfirm,jonashaag/libfirm,8l/libfirm,davidgiven/libfirm,MatzeB/libfirm,davidgiven/libfirm,MatzeB/libfirm,jonashaag/libfirm,libfirm/libfirm,killbug2004/libfirm,killbug2004/libfirm,davidgiven/libfirm,MatzeB/libfirm,davidgiven/libfirm,MatzeB/libfirm,davidgiven/libfirm,killbug2004/libfirm,libfirm/libfirm,jonashaag/libfirm,8l/libfirm