Join bit information for transformed nodes.
translate
Mul with double width result is not possible anymore in firm
remove unused/unnecessary link field from mode.
make get_Const_XXX parameters const
iropt: cleanup
iropt: add rule a+(-a)==0

The simple x+(-x) case worked already because it was converted to a x-x,
but the more complicated case (x-y) + (y-x) did not work. While
certainly the reassoc could perform better here, adding this rule
as a localopt doesn't hurt.
iropt: add 0 % x == 0 if x != 0 rule
leverage computed_value() knowledge in constbits analysis

Otherwise the bitinfo result was sometimes worse than the
computed_value() results which was not expected by the code in iropt.
leverage bitinfo in value_not_zero test
fix constant folding in transform_node_{Div|Mod}

These 2 functions have a special role as we cannot fold the whole node
with computed_value() because of mode_T result. The exising code was
broken as it tried to apply value_of() on a mode_T node.
tv_t.h: move underscore to the end of function names

This avoids using reserved identifiers
add inline version of tarval_is_constant
computed_value() is allowed to return tarval_unknown and tarval_bad

- document this correctly
- correctly test with tarval_is_constant() if you expect a constant
  value.