[llvm-dev] Fwd: [PATCH] D17497: Support arbitrary address space for intrinsics

Philip Reames via llvm-dev llvm-dev at lists.llvm.org
Wed Feb 24 09:28:38 PST 2016


This probably needs broader discussion.  We have an existing naming 
mechanism for polymorphic intrinsics; Elena is proposing a new one to 
avoid making the names for various load/store intrinsics particularly ugly.

My personal take:
1) I like the cleaner naming scheme.
2) I'm not sure the additional complexity is worth it.  (Not specific to 
the particular implementation proposed here.)
3) I have no strong preference other than that the @llvm.masked_load 
(and friends) intrinsics support alternate address spaces in some form 
in the near future.

What do others think?

Philip


-------- Forwarded Message --------
Subject: 	[PATCH] D17497: Support arbitrary address space for intrinsics
Date: 	Mon, 22 Feb 2016 08:39:38 +0000
From: 	Elena Demikhovsky <elena.demikhovsky at intel.com>
Reply-To: 	reviews+D17497+public+90f3d1b9468ba8ca at reviews.llvm.org
To: 	elena.demikhovsky at intel.com, apilipenko at azulsystems.com, 
listmail at philipreames.com, ayal.zaks at intel.com, 
Matthew.Arsenault at amd.com, pjcoup at gmail.com
CC: 	llvm-commits at lists.llvm.org



delena created this revision.
delena added reviewers: apilipenko, reames, Ayal, arsenm, pjcoup.
delena added a subscriber: llvm-commits.
delena set the repository for this revision to rL LLVM.

This is an alternative proposal for supporting address space in intrinsics. It's applicable for any intrinsic, not only masked-load-store.
Related to http://reviews.llvm.org/D17270

I this proposal I add non-zero address space suffix to intrinsic name. The original name looks like
@llvm.xxx.xxx
The same name with address space 1 :
@llvm.xxx.xxx.a_1

(I did not update documentation. I'll do this if the proposed change looks reasonable for reviewers ).

Repository:
   rL LLVM

http://reviews.llvm.org/D17497

Files:
   ../include/llvm/IR/IRBuilder.h
   ../include/llvm/IR/Intrinsics.h
   ../lib/IR/Function.cpp
   ../lib/IR/IRBuilder.cpp
   ../lib/IR/Verifier.cpp
   ../test/Transforms/LoopVectorize/X86/gather_scatter.ll




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160224/12aaed3a/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17497.48653.patch
Type: text/x-patch
Size: 13401 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160224/12aaed3a/attachment-0001.bin>


More information about the llvm-dev mailing list