[LLVMdev] GSoC 2009: Extending LLVM IR to aid multi-core code generation

someguy just.s0m3.guy+llvmdev at gmail.com
Mon Mar 30 07:05:17 PDT 2009


The reason for my suggestion is that adding intrinsics is also considered to
be a breaking change.
This is the third question/suggestion in the last week or so where the
intrinsics/pseudo-function idea has been raised. Perhaps what llvm really
needs is a 'generic' pseudo-intrinsic of some kind?

2009/3/30 Milos Puzovic <milos.puzovic at gmail.com>

> 2009/3/30 someguy <just.s0m3.guy+llvmdev at gmail.com<just.s0m3.guy%2Bllvmdev at gmail.com>
> >
>
>> Can you not achieve the same effect without adding intrinsics? Insert
>> function calls to a __spawn and __join pseudo-function instead?
>>
> It would make LLVM code generation more difficult because instead of
> building a new instruction (in this case intrinsic) you will be building
> complex function calls and therefore making much more changes to the
> existing front-end of your existing language if you want it to support
> parallel programing. Analysis of generated LLVM code will become more
> difficult because now instead of simply looking at the instructions you will
> also need to look at the function calls and see if they are calling any
> pseudo-functions which might require changes to the LLVM API as well.
> Finally, the same goes when writting a back-end for the processor of your
> choice -- you would really like to just add new code for building threads
> not to modify the existing one for function calls. In summary, adding
> intrinsics gives you a structure and nice code :)
>
> Ideally, I would really like to see these intrinsic as instructions.
> Because adding new instructions to LLVM language requires changing all of
> the transformation of LLVM and I really want to have working version of code
> and useful results by the end of GSoC I have decided to go this way. Once it
> (if :) is demonstrated that this extension does aid multi-core code
> generation and LLVM community is happy with it I would be happy to add them
> as instructions.
>
> Thanks,
> Milos.
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20090330/20eb3b9f/attachment.html>


More information about the llvm-dev mailing list