mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-23 14:11:05 +08:00
re PR target/60609 (Error: value of 256 too large for field of 1 bytes at 68242)
2014-04-07 Charles Baylis <charles.baylis@linaro.org> PR target/60609 * config/arm/arm.h (ASM_OUTPUT_CASE_END): Remove. (LABEL_ALIGN_AFTER_BARRIER): Align barriers which occur after ADDR_DIFF_VEC. 2014-04-07 Charles Baylis <charles.baylis@linaro.org> PR target/60609 * g++.dg/torture/pr60609.C: New test. From-SVN: r209191
This commit is contained in:
parent
d6adff07f1
commit
e75c161776
@ -1,3 +1,10 @@
|
||||
2014-04-07 Charles Baylis <charles.baylis@linaro.org>
|
||||
|
||||
PR target/60609
|
||||
* config/arm/arm.h (ASM_OUTPUT_CASE_END): Remove.
|
||||
(LABEL_ALIGN_AFTER_BARRIER): Align barriers which occur after
|
||||
ADDR_DIFF_VEC.
|
||||
|
||||
2014-04-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/60766
|
||||
|
@ -2194,14 +2194,9 @@ extern int making_const_table;
|
||||
#undef ASM_OUTPUT_BEFORE_CASE_LABEL
|
||||
#define ASM_OUTPUT_BEFORE_CASE_LABEL(FILE, PREFIX, NUM, TABLE) /* Empty. */
|
||||
|
||||
/* Make sure subsequent insns are aligned after a TBB. */
|
||||
#define ASM_OUTPUT_CASE_END(FILE, NUM, JUMPTABLE) \
|
||||
do \
|
||||
{ \
|
||||
if (GET_MODE (PATTERN (JUMPTABLE)) == QImode) \
|
||||
ASM_OUTPUT_ALIGN (FILE, 1); \
|
||||
} \
|
||||
while (0)
|
||||
#define LABEL_ALIGN_AFTER_BARRIER(LABEL) \
|
||||
(GET_CODE (PATTERN (prev_active_insn (LABEL))) == ADDR_DIFF_VEC \
|
||||
? 1 : 0)
|
||||
|
||||
#define ARM_DECLARE_FUNCTION_NAME(STREAM, NAME, DECL) \
|
||||
do \
|
||||
|
@ -1,3 +1,8 @@
|
||||
2014-04-07 Charles Baylis <charles.baylis@linaro.org>
|
||||
|
||||
PR target/60609
|
||||
* g++.dg/torture/pr60609.C: New test.
|
||||
|
||||
2014-04-07 Richard Biener <rguenther@suse.de>
|
||||
|
||||
PR tree-optimization/60766
|
||||
|
252
gcc/testsuite/g++.dg/torture/pr60609.C
Normal file
252
gcc/testsuite/g++.dg/torture/pr60609.C
Normal file
@ -0,0 +1,252 @@
|
||||
/* { dg-do assemble } */
|
||||
|
||||
class exception
|
||||
{
|
||||
};
|
||||
class bad_alloc:exception
|
||||
{
|
||||
};
|
||||
class logic_error:exception
|
||||
{
|
||||
};
|
||||
class domain_error:logic_error
|
||||
{
|
||||
};
|
||||
class invalid_argument:logic_error
|
||||
{
|
||||
};
|
||||
class length_error:logic_error
|
||||
{
|
||||
};
|
||||
class overflow_error:exception
|
||||
{
|
||||
};
|
||||
typedef int mpz_t[];
|
||||
template < class > class __gmp_expr;
|
||||
template <> class __gmp_expr < mpz_t >
|
||||
{
|
||||
~__gmp_expr ();
|
||||
};
|
||||
|
||||
class PIP_Solution_Node;
|
||||
class internal_exception
|
||||
{
|
||||
~internal_exception ();
|
||||
};
|
||||
class not_an_integer:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_variable:internal_exception
|
||||
{
|
||||
};
|
||||
class not_an_optimization_mode:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_bounded_integer_type_width:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_bounded_integer_type_representation:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_bounded_integer_type_overflow:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_complexity_class:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_control_parameter_name:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_control_parameter_value:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_pip_problem_control_parameter_name:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_pip_problem_control_parameter_value:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_relation:internal_exception
|
||||
{
|
||||
};
|
||||
class ppl_handle_mismatch:internal_exception
|
||||
{
|
||||
};
|
||||
class timeout_exception
|
||||
{
|
||||
~timeout_exception ();
|
||||
};
|
||||
class deterministic_timeout_exception:timeout_exception
|
||||
{
|
||||
};
|
||||
void __assert_fail (const char *, const char *, int, int *)
|
||||
__attribute__ ((__noreturn__));
|
||||
void PL_get_pointer (void *);
|
||||
int Prolog_is_address ();
|
||||
inline int
|
||||
Prolog_get_address (void **p1)
|
||||
{
|
||||
Prolog_is_address ()? static_cast <
|
||||
void >(0) : __assert_fail ("Prolog_is_address", "./swi_cfli.hh", 0, 0);
|
||||
PL_get_pointer (p1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
class non_linear:internal_exception
|
||||
{
|
||||
};
|
||||
class not_unsigned_integer:internal_exception
|
||||
{
|
||||
};
|
||||
class not_universe_or_empty:internal_exception
|
||||
{
|
||||
};
|
||||
class not_a_nil_terminated_list:internal_exception
|
||||
{
|
||||
};
|
||||
class PPL_integer_out_of_range
|
||||
{
|
||||
__gmp_expr < mpz_t > n;
|
||||
};
|
||||
void handle_exception ();
|
||||
template < typename T > T * term_to_handle (int, const char *)
|
||||
{
|
||||
if (Prolog_is_address ())
|
||||
{
|
||||
void *p;
|
||||
Prolog_get_address (&p);
|
||||
return static_cast < T * >(0);
|
||||
}
|
||||
throw;
|
||||
}
|
||||
|
||||
void
|
||||
ppl_new_MIP_Problem_from_MIP_Problem ()
|
||||
try
|
||||
{
|
||||
term_to_handle < int >(0, "ppl_new_MIP_Problem_from_MIP_Problem/2");
|
||||
}
|
||||
|
||||
catch (exception &)
|
||||
{
|
||||
}
|
||||
|
||||
int
|
||||
ppl_PIP_Tree_Node_parametric_values ()
|
||||
{
|
||||
try
|
||||
{
|
||||
PIP_Solution_Node *a = term_to_handle < PIP_Solution_Node > (0, 0);
|
||||
(void)a;
|
||||
return 1;
|
||||
}
|
||||
catch (internal_exception &)
|
||||
{
|
||||
}
|
||||
catch (not_unsigned_integer &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (non_linear &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_variable &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_an_integer &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (ppl_handle_mismatch &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_an_optimization_mode &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_complexity_class &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_bounded_integer_type_width &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_bounded_integer_type_representation &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_bounded_integer_type_overflow &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_control_parameter_name &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_control_parameter_value &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_pip_problem_control_parameter_name &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_pip_problem_control_parameter_value &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_universe_or_empty &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_relation &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (not_a_nil_terminated_list &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (PPL_integer_out_of_range &)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
catch (int &)
|
||||
{
|
||||
} catch (timeout_exception &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (deterministic_timeout_exception &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (overflow_error &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (domain_error &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (length_error &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (invalid_argument &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (logic_error &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (bad_alloc &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch (exception &)
|
||||
{
|
||||
handle_exception ();
|
||||
} catch ( ...)
|
||||
{
|
||||
handle_exception ();
|
||||
}
|
||||
return 0;
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user