utils2.c (build_allocator): Provide the extra arguments to make_aligning_type for...
authorOlivier Hainque <hainque@adacore.com>
Wed, 6 Jun 2007 10:21:37 +0000 (12:21 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 6 Jun 2007 10:21:37 +0000 (12:21 +0200)
commitf2f4ef82f2d1a9f54bb8715b1f8b884ed8e1322a
treea783d6f6dfd52504c36708b00f389ea1fcf3e4f1
parentb3a22f38ea7617e609a73938d0db11cf4f77f5dc
utils2.c (build_allocator): Provide the extra arguments to make_aligning_type for super-aligned objects...

2007-04-20  Olivier Hainque  <hainque@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>

* utils2.c (build_allocator): Provide the extra arguments to
make_aligning_type for super-aligned objects allocated from the default
pool. Leave enough room for a pointer before the aligning field, and
store the system's allocator return value there.
(build_call_alloc_dealloc): When releasing a super-aligned object,
retrieve the system's allocator return value from where build_allocator
has stored it, just ahead of the adjusted address we are passed.
(build_call_raise): Handle properly the generation of line numbers when
the node is marked No_Location.
(compare_elmt_bitpos): Use tree_int_cst_compare.  Stabilize the sort
by using DECL_UID on ties.
(build_binary_op) <EQ_EXPR>: Accept fat pointer types with the same
main variant.
(build_call_raise): Handle converting exception into goto; support new
argument KIND.
(build_component_ref): Add new arg to build_call_raise.

From-SVN: r125383
gcc/ada/utils2.c