Wish to extend the LLVM intermediate representation with prefetch support

Hi LLVM Developers

I would like to extend the LLVM intermediate representation with support for platform-independent prefetch support, if this project isn't assigned to someone.


That's great! It is not yet taken, and it's a nice project. Here are
some useful resources for you:

This should explain how to add an intrinsic function to llvm. I recommend
naming it "llvm.prefetch":

To work on this project, I recommend working from the current CVS sources,
to make it easier to merge your work back in when you are done with it.
You can get information on how to grab CVS here (***):

For prefetching in particular, I would recommend looking at the GCC
prefetch intrinsic that they have. There did a lot of work to come up
with a clean and generic interface to prefetching. We should probably
shamelessly borrow their interface:

I would recommend adding prefetch support to one of the backends, for
example the X86 backend. To see how intrinsics are handled by the code
generators, search for Intrinsic::memcpy in

As always, if you have any questions, please let us know!

*** Our department is currently blocking CVS access due to a remote root
exploit recently discovered. This will hopefully be resolved soon though.