[LLVMbugs] [Bug 1375] NEW: llvm.returnaddress intrinsic is not handled correctly
bugzilla-daemon at cs.uiuc.edu
bugzilla-daemon at cs.uiuc.edu
Tue May 1 05:28:29 PDT 2007
http://llvm.org/bugs/show_bug.cgi?id=1375
Summary: llvm.returnaddress intrinsic is not handled correctly
Product: tools
Version: trunk
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: llvm-gcc
AssignedTo: unassignedbugs at nondot.org
ReportedBy: asl at math.spbu.ru
Consider the following code:
#include <memory.h>
struct _Unwind_Context
{
void *ra;
};
void bar(struct _Unwind_Context*);
void foo(struct _Unwind_Context* context)
{
void *ra = __builtin_extract_return_addr (__builtin_return_address (0));
memset (context, 0, sizeof (struct _Unwind_Context));
context->ra = ra;
bar(context);
}
llvm-gcc produces:
%tmp = call i8* @llvm.returnaddress( i32 0 ) ; <i8*> [#uses=0]
store i8* null, i8** %ra
which is definitely wrong.
This is one small bit needed for EH support in llvm-gcc.
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
More information about the llvm-bugs
mailing list