[PATCH] D33989: [OpenCL] Allow targets to select address space per type
Anastasia Stulova via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Oct 12 06:51:15 PDT 2017
Anastasia added inline comments.
================
Comment at: cfe/trunk/lib/Basic/TargetInfo.cpp:351
+LangAS::ID TargetInfo::getOpenCLTypeAddrSpace(const Type *T) const {
+ auto BT = dyn_cast<BuiltinType>(T);
----------------
chapuni wrote:
> Excuse me for old commit, I think it might be layering violation.
> Could we avoid using AST/Type here?
One of the problems is that even if we could write another layer of enums to map OpenCL specific AST types into the TargetInfo representation it doesn't really help creating a layered structure between AST and Basic libs. They seem to have a large logical dependence despite not including the library headers physically. So modification in AST would require modifications in Basic anyway resulting in overhead of changing 2 places instead of 1. So I am wondering if there is any better approach here e.g. revisiting the library dependencies or what classes they should contain?
Repository:
rL LLVM
https://reviews.llvm.org/D33989
More information about the cfe-commits
mailing list