[LLVMdev] StructType for dispatch_object_t changed by Linker

Jaymie Strecker jstrecker at kosada.com
Fri Dec 14 08:08:28 PST 2012

Duncan, thanks for your reply. 

> Probably the types are not defined precisely the same in each module (maybe you
> could send the exact definitions in each module to the mailing list?), 

In the module loaded in Step 1 (otherModule): 

%struct.dispatch_group_s = type opaque
%union.dispatch_object_t = type { %struct.dispatch_object_s* }
%struct.dispatch_object_s = type opaque

In the module generated in Step 2 (mainModule): 

%struct.dispatch_group_s = type {}
%union.dispatch_object_t = type { %struct.dispatch_object_s* }
%struct.dispatch_object_s = type {}

(The LLVM API calls to generate mainModule were generated by calling `llc -march=cpp` on otherModule.) 

> but I
> think there were also some bugs in this area that were fixed in 3.2.

Great, I'll also test on 3.2 when I get a chance. Thanks. 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20121214/af69b251/attachment.html>

More information about the llvm-dev mailing list