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



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
  • [PATCH] D33989: [OpenCL]... NAKAMURA Takumi via Phabricator via cfe-commits
    • [PATCH] D33989: [Op... Anastasia Stulova via Phabricator via cfe-commits

Reply via email to