On 2012-11-29 06:29, Eric Botcazou wrote:
> PR middle-end/55321
> * calls.c (emit_library_call_value_1): Mark as no-nonlocal if no-throw.
Ok.
r~
> Well, there's a call at the tree level for __sync_synchronize as well.
>
> So the question is: why does __s_s ICE but memcmp doesn't? I suppose
> it's the mere rarity with which HAVE_cmpmemsi is defined, and expansion
> of gen_cmpmemsi fails.
>
> There are plenty of other calls to emit_library_
On 11/15/2012 03:08 PM, Eric Botcazou wrote:
> For a naked call to memcpy? I don't think so, this is a call so there will
> be
> an abnormal edge at the Tree level. The problem arises only when the
> abnormal
> edge is created during RTL expansion.
Well, there's a call at the tree level for
> While its true that this call is nononlocal, there are plenty of other
> builtins that we expand with just emit_library_call (as opposed to
> emit_libcall_block) that also need this sort of treatment.
I'm a little skeptical, although __sync_synchronize is probably not the only
one indeed. I'll
On 11/15/12 20:05, Richard Henderson wrote:
On 11/15/2012 12:01 PM, Ramana Radhakrishnan wrote:
I believe this is by choice because no one has yet written an unwinder for the
ARM exception tables for Ada :( .
Ada is supposed to be using the same libgcc unwinder as the rest of
the compiler. S
On 11/15/2012 12:01 PM, Ramana Radhakrishnan wrote:
> I believe this is by choice because no one has yet written an unwinder for
> the ARM exception tables for Ada :( .
Ada is supposed to be using the same libgcc unwinder as the rest of
the compiler. So this cannot be it, exactly.
Perhaps some
r~
PS: ARM still uses sjlj exceptions for Ada? I thought with the obsolescence
of pre-eabi targets that we'd always use unwind tables now.
I believe this is by choice because no one has yet written an unwinder
for the ARM exception tables for Ada :( .
regards,
Ramana
On 11/15/2012 11:34 AM, Eric Botcazou wrote:
> The problem is that get_loop_latch_edges finds no latch edges for a loop
> because the header of the loop doesn't dominate any of its predecessors.
> The reason is that a new edge is added during RTL expansion, which changes
> the
> dominance info.
Hi,
this is the build failure of the Ada runtime on the ARM:
+===GNAT BUG DETECTED==+
| 4.8.0 2012 (experimental) (armv5tel-unknown-linux-gnueabi) GCC error:|
| in merge_latch_edges, at cfgloop.c:678 |
| Err