+2004-09-24 Jeff Law <law@redhat.com>
+
+ * tree-ssa-dom.c (dom_opt_finalize_block): Fix violation of strict
+ aliasing rules.
+ (simplify_cond_and_lookup_avail_expr): Likewise.
+
2004-09-24 Joseph S. Myers <jsm@polyomino.org.uk>
PR c/12802
while (VARRAY_ACTIVE_SIZE (vrp_variables_stack) > 0)
{
tree var = VARRAY_TOP_TREE (vrp_variables_stack);
- struct vrp_hash_elt vrp_hash_elt;
+ struct vrp_hash_elt vrp_hash_elt, *vrp_hash_elt_p;
void **slot;
/* Each variable has a stack of value range records. We want to
slot = htab_find_slot (vrp_data, &vrp_hash_elt, NO_INSERT);
- var_vrp_records = (*(struct vrp_hash_elt **)slot)->records;
+ vrp_hash_elt_p = (struct vrp_hash_elt *) *slot;
+ var_vrp_records = vrp_hash_elt_p->records;
+
while (VARRAY_ACTIVE_SIZE (var_vrp_records) > 0)
{
struct vrp_element *element
int lowequal, highequal, swapped, no_overlap, subset, cond_inverted;
varray_type vrp_records;
struct vrp_element *element;
- struct vrp_hash_elt vrp_hash_elt;
+ struct vrp_hash_elt vrp_hash_elt, *vrp_hash_elt_p;
void **slot;
/* First see if we have test of an SSA_NAME against a constant
if (slot == NULL)
return NULL;
- vrp_records = (*(struct vrp_hash_elt **)slot)->records;
+ vrp_hash_elt_p = (struct vrp_hash_elt *) *slot;
+ vrp_records = vrp_hash_elt_p->records;
if (vrp_records == NULL)
return NULL;