[LLVMbugs] [Bug 1654] New: Broken arm_struct_value_rtx confuses objc_act. c in LLVM-GCC 4.0
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Wed Sep 12 11:37:21 PDT 2007
http://llvm.org/bugs/show_bug.cgi?id=1654
Summary: Broken arm_struct_value_rtx confuses objc_act.c in LLVM-
GCC 4.0
Product: new-bugs
Version: unspecified
Platform: PC
OS/Version: All
Status: NEW
Severity: minor
Priority: P2
Component: new bugs
AssignedTo: unassignedbugs at nondot.org
ReportedBy: nightwatch41 at gmail.com
CC: llvmbugs at cs.uiuc.edu
Created an attachment (id=1115)
--> (http://llvm.org/bugs/attachment.cgi?id=1115)
Proposed patch to address this issue.
Per the FIXME comment in gcc/config/arm/arm.c of LLVM-GCC 4.0, the
arm_struct_value_rtx function lies about whether structs are passed in a hidden
first parameter. This confuses gcc/objc/objc_act.c, which takes this result to
mean that Objective-C method calls do not need to be specially wrapped up in
objc_msgSend_stret. This causes crashes whenever struct-returning Objective-C
methods are called on arm-apple-darwin. The attached patch corrects this by
adding a new subtarget-specific define, BROKEN_STRUCT_VALUE_RTX, which simply
causes the Objective-C component of LLVM-GCC to assume that structures are
returned in a hidden first parameter, regardless of what the target backend's
struct_value_rtx() function tells it.
Thanks,
Patrick Walton
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
More information about the llvm-bugs
mailing list