On Mon, Feb 21, 2005 at 05:07:30PM -0800, Dale Johannesen wrote:
> - r0 = gimplify_expr (&OBJ_TYPE_REF_OBJECT (*expr_p), pre_p,
> post_p,
> + /* Postincrements in OBJ_TYPE_REF_OBJECT don't affect the
> + value of the OBJ_TYPE_REF, so force them to be emitted
> +
On Feb 21, 2005, at 10:59 PM, Kai Henningsen wrote:
[EMAIL PROTECTED] (Dale Johannesen) wrote on 21.02.05 in
<[EMAIL PROTECTED]>:
Simple Objective C programs such as
#include
void foo(void) {
Object *o;
[o++ free];
}
result in calling objc_msgSend indirectly through a pointer, instead
of
[EMAIL PROTECTED] (Dale Johannesen) wrote on 21.02.05 in <[EMAIL PROTECTED]>:
> Simple Objective C programs such as
>
> #include
> void foo(void) {
>Object *o;
>[o++ free];
> }
>
> result in calling objc_msgSend indirectly through a pointer, instead
> of directly as they did in 3.3. Thi
Dale Johannesen wrote:
OK, thanks. I can look into doing this in the ObjC-specific hook,
unless you have
a better idea?
I've looked harder.
See PR19148 for details about my patch. I think the key is that you not
recursively call gimplify_expr with fb_lvalue. Since we're calling
recursively wi
On Feb 21, 2005, at 5:21 PM, Mark Mitchell wrote:
Dale Johannesen wrote:
+ /* Postincrements in OBJ_TYPE_REF_OBJECT don't affect the
+ value of the OBJ_TYPE_REF, so force them to be emitted
+ during subexpression evaluation rather than after the
+ OB
Dale Johannesen wrote:
+ /* Postincrements in OBJ_TYPE_REF_OBJECT don't affect the
+ value of the OBJ_TYPE_REF, so force them to be emitted
+ during subexpression evaluation rather than after the
+ OBJ_TYPE_REF. This permits objc_msgSend calls in Obj
Simple Objective C programs such as
#include
void foo(void) {
Object *o;
[o++ free];
}
result in calling objc_msgSend indirectly through a pointer, instead
of directly as they did in 3.3. This seems to happen only at low
optimization
levels; still, it's a performance regression. The reason