[LLVMdev] 2nd attempt for a working patch for bug 2606

Garrison Venn gvenn.cfe.dev at gmail.com
Tue Mar 2 15:00:43 PST 2010


Hi Jeffrey,

The attached patch contains what I guess are the first round of unit tests for this effort, which mostly came from
existing attachments to  2606. I've left the current solution to 2606 pretty much the same as before. It can be viewed 
as a place holder for incorporating in LinkModule.cpp type logic in the next patch. Most likely the inclusion of this logic 
will require a further rearrangement of the real solution across JIT and JITEmitter as compared to what is showed.

Three unit tests are currently provided in a new MultiModuleJITTest.cpp, and are more complicated versions of the 
following:

1) M1::F1 --> M2::F2
2) M1::F1 --> M2::G
3) M1::F1 --> M1::F2 via M2::G holding pointer to M1::F2

where 	M::Fa ==> function a in module M
		--> ==> calls
		M::G ==> global variable G in module M

The artificial solution is not documented and is marked with GMV Mod: as before. Beyond the lack of a real LinkModule
type solution, I still have not fully provided what your previous email discussed, but I believe we will slowly approach 
this limit with iteration. Also as you can see, I tend to use more formatting then most. So if you find this uncomfortable,
I will flatten where needed. 

Should I add this patch as an attachment to bug 2606?

Thanks for looking over this.

Garrison

PS: It will be a little while before I get back to this effort (3 days or so I believe), which unless redirected otherwise, will be 
focussed on replacing the artificial solution with similar logic contained in LinkModule::GetLinkageResult(...).
		

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100302/b7c50cd8/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PR2606.preliminary_with_unittests.patch
Type: application/octet-stream
Size: 17723 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100302/b7c50cd8/attachment.obj>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100302/b7c50cd8/attachment-0001.html>


More information about the llvm-dev mailing list