fix warnings
[libfirm] / ir / tv / tv.c
index 47ef2d4..b6bb770 100644 (file)
@@ -23,7 +23,6 @@
  *           values.
  * @date     2003
  * @author   Mathias Heil
- * @version  $Id$
  * @brief
  *
  * Values are stored in a format depending upon chosen arithmetic
@@ -637,7 +636,7 @@ ir_tarval *get_tarval_all_one(ir_mode *mode)
 
 int tarval_is_constant(ir_tarval *tv)
 {
-       int num_res = sizeof(reserved_tv) / sizeof(reserved_tv[0]);
+       size_t const num_res = ARRAY_SIZE(reserved_tv);
 
        /* reserved tarvals are NOT constants. Note that although
           tarval_b_true and tarval_b_false are reserved, they are constants of course. */
@@ -1186,6 +1185,7 @@ ir_tarval *tarval_and(ir_tarval *a, ir_tarval *b)
        case irms_internal_boolean:
                return (a == tarval_b_false) ? a : b;
 
+       case irms_reference:
        case irms_int_number:
                sc_and(a->value, b->value, NULL);
                return get_tarval(sc_get_buffer(), sc_get_buffer_length(), a->mode);
@@ -1206,6 +1206,7 @@ ir_tarval *tarval_andnot(ir_tarval *a, ir_tarval *b)
        case irms_internal_boolean:
                return a == tarval_b_true && b == tarval_b_false ? tarval_b_true : tarval_b_false;
 
+       case irms_reference:
        case irms_int_number:
                sc_andnot(a->value, b->value, NULL);
                return get_tarval(sc_get_buffer(), sc_get_buffer_length(), a->mode);
@@ -1229,6 +1230,7 @@ ir_tarval *tarval_or(ir_tarval *a, ir_tarval *b)
        case irms_internal_boolean:
                return (a == tarval_b_true) ? a : b;
 
+       case irms_reference:
        case irms_int_number:
                sc_or(a->value, b->value, NULL);
                return get_tarval(sc_get_buffer(), sc_get_buffer_length(), a->mode);
@@ -1252,6 +1254,7 @@ ir_tarval *tarval_eor(ir_tarval *a, ir_tarval *b)
        case irms_internal_boolean:
                return (a == b)? tarval_b_false : tarval_b_true;
 
+       case irms_reference:
        case irms_int_number:
                sc_xor(a->value, b->value, NULL);
                return get_tarval(sc_get_buffer(), sc_get_buffer_length(), a->mode);
@@ -1481,6 +1484,7 @@ unsigned char get_tarval_sub_bits(ir_tarval *tv, unsigned byte_ofs)
        case irma_twos_complement:
                return sc_sub_bits(tv->value, get_mode_size_bits(tv->mode), byte_ofs);
        case irma_ieee754:
+       case irma_x86_extended_float:
                return fc_sub_bits((const fp_value*) tv->value, get_mode_size_bits(tv->mode), byte_ofs);
        default:
                panic("get_tarval_sub_bits(): arithmetic mode not supported");