> That's true... so you can only simplify is_parameter_of by dropping
> the context check.
OK, thanks, installed with this modification and the fix for the oversight
spotted by Jakub, after retesting on x86-64/Linux.
--
Eric Botcazou
On Tue, Sep 17, 2013 at 10:42 AM, Eric Botcazou wrote:
>> Yeah, I thought testing for a PARM_DECL should be sufficient? For
>> nested functions references to outer parms should have been lowered via the
>> static chain at the point tree-inline.c sees them.
>
> OK for the latter point, but are you
On Fri, Sep 13, 2013 at 04:29:48PM +0200, Eric Botcazou wrote:
> @@ -4748,6 +4774,8 @@ copy_gimple_seq_and_replace_locals (gimp
>id.transform_call_graph_edges = CB_CGE_DUPLICATE;
>id.transform_new_cfg = false;
>id.transform_return_to_modify = false;
> + id.transform_parameter = false;
> Yeah, I thought testing for a PARM_DECL should be sufficient? For
> nested functions references to outer parms should have been lowered via the
> static chain at the point tree-inline.c sees them.
OK for the latter point, but are you sure for the former? My understanding is
that we're already
On Tue, Sep 17, 2013 at 9:03 AM, Eric Botcazou wrote:
>> I've looked at the C++ testcase
>>
>> int foo (int &x)
>> {
>> try {
>> return x;
>> }
>> catch (...)
>> {
>> return 0;
>> }
>> }
>>
>> which exhibits exactly the behavior you quote - return x is considered
>> throwing an e
> I've looked at the C++ testcase
>
> int foo (int &x)
> {
> try {
> return x;
> }
> catch (...)
> {
> return 0;
> }
> }
>
> which exhibits exactly the behavior you quote - return x is considered
> throwing an exception. The C++ FE doesn't arrange for TREE_THIS_NOTRAP to
> be s
On 09/16/2013 05:28 AM, Richard Biener wrote:
which exhibits exactly the behavior you quote - return x is considered throwing
an exception. The C++ FE doesn't arrange for TREE_THIS_NOTRAP to be
set here (maybe due to this issue you quote?).
I haven't been aware of TREE_THIS_NOTRAP, but we coul
On Fri, Sep 13, 2013 at 4:29 PM, Eric Botcazou wrote:
> Hi,
>
> in Ada parameters can be passed by reference: in this case, the address of the
> argument is directly passed to the callee, which dereferences it to access the
> argument; now Ada also enables -fexceptions -fnon-call-exceptions, which
Hi,
in Ada parameters can be passed by reference: in this case, the address of the
argument is directly passed to the callee, which dereferences it to access the
argument; now Ada also enables -fexceptions -fnon-call-exceptions, which means
that any pointer dereference is seen as the potential