[PATCH] Support for address space casting in order to map these on the new 'addrspacecast' IR instruction

Michele Scandale michele.scandale at gmail.com
Sat Dec 7 05:32:30 PST 2013


  Version that explicitly does not support C++: address spaces within C++ should be better discussed and it seems that currently there is no interest.

  Originally this patch wanted to fix the case of OpenCL and CUDA. The address space extension on C is fixed as well. *IMHO for now this patch should be fine to address the original problem.*

  Trying to play with address spaces in C++ now will bring to codegen assertion due the illegality of bitcast between pointers of different address spaces: solve this problem requires a definition of what is legal or not, and a semantic extension, for C++ w.r.t. different address spaces.

Hi pekka.jaaskelainen, rjmccall, rsmith,

http://llvm-reviews.chandlerc.com/D2241

CHANGE SINCE LAST DIFF
  http://llvm-reviews.chandlerc.com/D2241?vs=5830&id=5973#toc

Files:
  include/clang/AST/OperationKinds.h
  lib/AST/Expr.cpp
  lib/AST/ExprConstant.cpp
  lib/CodeGen/CGExpr.cpp
  lib/CodeGen/CGExprAgg.cpp
  lib/CodeGen/CGExprComplex.cpp
  lib/CodeGen/CGExprConstant.cpp
  lib/CodeGen/CGExprScalar.cpp
  lib/Edit/RewriteObjCFoundationAPI.cpp
  lib/Sema/SemaExpr.cpp
  lib/StaticAnalyzer/Core/ExprEngineC.cpp
  test/CodeGenCUDA/address-space-conversion.cu
  test/CodeGenOpenCL/address-space-conversion.cl
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D2241.6.patch
Type: text/x-patch
Size: 9819 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131207/78a4935f/attachment.bin>


More information about the cfe-commits mailing list