Author: stulova
Date: Mon Jul 4 11:07:18 2016
New Revision: 274509
URL: http://llvm.org/viewvc/llvm-project?rev=274509&view=rev
Log:
[OpenCL] Make OpenCL Builtins added according to the right version.
Currently we only have OpenCL 2.0 Builtins i.e. pipes or address space
conversions.
They have
Author: stulova
Date: Tue Jul 5 06:31:24 2016
New Revision: 274540
URL: http://llvm.org/viewvc/llvm-project?rev=274540&view=rev
Log:
[OpenCL] An implementation of device side enqueue (DSE) from OpenCL v2.0
s6.13.17.
- Added new Builtins: enqueue_kernel, get_kernel_work_group_size
and get_kernel
Anastasia created this revision.
Anastasia added reviewers: bader, yaxunl.
Anastasia added a subscriber: cfe-commits.
This change:
1. Changes diagnostics for Blocks to be implicitly const qualified OpenCL v2.0
s6.12.5.
2. Adds and unifies diagnostics of some OpenCL special types: blocks, images,
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
LGTM!
Has this test case been missing from the original commit? If yes, could you
point to it please! Thanks!
http://reviews.llvm.org/D21295
Anastasia updated this revision to Diff 62880.
Anastasia added a comment.
- Fixed misc formatting issues
- Added restrictions and testing for return types
http://reviews.llvm.org/D21989
Files:
include/clang/Basic/DiagnosticSemaKinds.td
lib/Sema/SemaDecl.cpp
lib/Sema/SemaExpr.cpp
lib/Sem
Anastasia added inline comments.
Comment at: include/clang/AST/BuiltinTypes.def:164
@@ +163,3 @@
+// Internal OpenCL sampler initializer type.
+BUILTIN_TYPE(OCLSamplerInit, OCLSamplerInitTy)
+
> However, we want it to be translated to __sampler_initializer* type.
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
LGTM! Could you please address these last minor comments though before
committing.
Thanks!
Comment at: test/SemaOpenCL/access-qualifier.cl:10
@@ +9,3 @@
+#if __OPENCL_
Anastasia added inline comments.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:2509
@@ -2508,3 +2508,3 @@
"functions, methods, and parameters|classes|enums|variables|methods|"
- "fields and global variables|structs|variables and typedefs|thread-local
variables|"
- "
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
LGTM! Thanks!
http://reviews.llvm.org/D22067
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/
Author: stulova
Date: Mon Jul 11 08:46:02 2016
New Revision: 275061
URL: http://llvm.org/viewvc/llvm-project?rev=275061&view=rev
Log:
[OpenCL] Improved diagnostics of OpenCL types.
- Changes diagnostics for Blocks to be implicitly
const qualified OpenCL v2.0 s6.12.5.
- Added and unified diagno
Anastasia added inline comments.
Comment at: lib/Frontend/CompilerInvocation.cpp:1681
@@ -1692,1 +1680,3 @@
+ // -cl-strict-aliasing needs to emit diagnostic in the case where CL > 1.0.
+ // This option should be deprecated for CL > 1.0 because
Was this code m
Anastasia added inline comments.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:7868
@@ +7867,3 @@
+def warn_sampler_initializer_invalid_bits : Warning<
+ "Sampler initializer has invalid %0 bits">, InGroup;
+def err_sampler_initializer_not_constant : Error<
-
Anastasia added inline comments.
Comment at: test/Frontend/opencl-blocks.cl:9
@@ -8,1 +8,3 @@
// RUN: %clang_cc1 %s -triple amdgcn--amdhsa -x c -std=c99 -verify
-fsyntax-only
+// RUN: %clang_cc1 -cl-std=CL1.1 -cl-strict-aliasing %s 2>&1 | FileCheck
--check-prefix=CHECK-INVALID-
Anastasia added inline comments.
Comment at: lib/CodeGen/CGOpenCLRuntime.cpp:83
@@ +82,3 @@
+SamplerTy = llvm::PointerType::get(llvm::StructType::create(
+ CGM.getLLVMContext(), "__sampler"),
+ CGM.getContext().getTargetAddressSpace(
I am wondering i
Anastasia added a comment.
Wondering if we should add similar restrictions for other OpenCL types incl
events or queues?
Also I am guessing that the following
pipe int (*p)
should be parsed as pointer to pipe and not a pointer to a pipe element type
(by analogy to function pointers or other
Anastasia closed this revision.
Anastasia added a comment.
r275061
http://reviews.llvm.org/D21989
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia closed this revision.
Anastasia added a comment.
r262641
http://reviews.llvm.org/D17345
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia closed this revision.
Anastasia added a comment.
r262616
http://reviews.llvm.org/D16928
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia closed this revision.
Anastasia added a comment.
r255346
http://reviews.llvm.org/D15293
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia closed this revision.
Anastasia added a comment.
r253863
http://reviews.llvm.org/D13168
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia closed this revision.
Anastasia added a comment.
r248906 and r250892
http://reviews.llvm.org/D13105
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia abandoned this revision.
Anastasia added a comment.
After clarifying with Khronos, it doesn't seem like this is needed indeed!
http://reviews.llvm.org/D17343
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi
Anastasia closed this revision.
Anastasia added a comment.
r274540 and r274509
http://reviews.llvm.org/D20249
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
LGTM! Thanks!
Repository:
rL LLVM
http://reviews.llvm.org/D22170
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.ll
Anastasia accepted this revision.
Anastasia added a comment.
LGTM!
http://reviews.llvm.org/D16876
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia created this revision.
Anastasia added a reviewer: bader.
Anastasia added subscribers: cfe-commits, pekka.jaaskelainen, yaxunl.
Follow up from the earlier discussion via cfe-dev regarding incomplete images
support in Clang:
http://lists.llvm.org/pipermail/cfe-dev/2016-February/047187.ht
Anastasia updated this revision to Diff 49651.
Anastasia added a comment.
Improved message text!
http://reviews.llvm.org/D17345
Files:
include/clang/Basic/DiagnosticSemaKinds.td
lib/Sema/SemaDecl.cpp
test/Parser/opencl-storage-class.cl
test/SemaOpenCL/storageclass-cl20.cl
test/SemaOpe
Author: stulova
Date: Thu Mar 3 07:33:19 2016
New Revision: 262616
URL: http://llvm.org/viewvc/llvm-project?rev=262616&view=rev
Log:
[OpenCL] Apply missing restrictions for Blocks in OpenCL v2.0
Applying the following restrictions for block types in OpenCL (v2.0 s6.12.5):
- __block storage clas
Author: stulova
Date: Thu Mar 3 12:38:40 2016
New Revision: 262641
URL: http://llvm.org/viewvc/llvm-project?rev=262641&view=rev
Log:
[OpenCL] Improve diagnostics of address spaces for variables in function
- Prevent local variables to be declared in global AS
- Diagnose AS of local variables w
Anastasia added a comment.
Tests missing!
http://reviews.llvm.org/D17955
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia added inline comments.
Comment at: test/SemaOpenCL/nosvm.cl:9
@@ +8,3 @@
+#else
+void f(__attribute__((nosvm)) int* a); // expected-warning {{'nosvm' attribute
ignored}}
+#endif
yaxunl wrote:
> Anastasia wrote:
> > yaxunl wrote:
> > > yaxunl wrote:
> >
Anastasia added inline comments.
Comment at: include/clang/AST/OpenCLImageTypes.def:39
@@ +38,3 @@
+
+IMAGE_READ_TYPE(image1d, OCLImage1d)
+IMAGE_READ_TYPE(image1d_array, OCLImage1dArray)
bader wrote:
> Minor comment: any image access qualifier can be applied to a
Anastasia added a comment.
I think it's hard to write this simpler as logic is quite complicated. But we
can definitely improve understanding with comments!
Btw, regarding tests to cover case 2, could we also add test with types in
which CV qualifiers differ. May be just at least one. No need t
It seems we are not printing and dumping the type correctly.
Currently we get this if we call PipeType::dump():
PipeType 0x9b14ce0 'pipe'
But we should have something like (for 'pipe int p'):
PipeType 0x9b14ce0 'pipe int'
`-BuiltinType 0x9adeed0 'int'
It should be similar to atomic or pointer ty
Cool! Thanks!
I have a feeling we are missing a VisitPipeType method in lib/AST/ASTDumper.cpp
and element type printing in TypePrinter::printPipeBefore() method.
Anastasia
-Original Message-
From: xiuli pan [mailto:xiuli...@outlook.com]
Sent: 16 March 2016 09:12
To: Anastasia Stulova;
Anastasia updated this revision to Diff 51303.
Anastasia added a comment.
Thanks to Aleksey Bader for rebasing this patch to ToT and fixing some tests
issues!
http://reviews.llvm.org/D17821
Files:
include/clang/AST/ASTContext.h
include/clang/AST/BuiltinTypes.def
include/clang/AST/OpenCLI
Anastasia added inline comments.
Comment at: test/SemaOpenCL/invalid-pipe-builtin-cl2.0.cl:1
@@ -1,2 +1,2 @@
// RUN: %clang_cc1 %s -verify -pedantic -fsyntax-only -cl-std=CL2.0
Could you add a test case that fails before your modification here to show that
you
Anastasia accepted this revision.
Anastasia added a comment.
LGTM!
http://reviews.llvm.org/D17596
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Anastasia accepted this revision.
Anastasia added a comment.
LGTM, apart from small remark on the test!
Comment at: test/Frontend/backend-option.c:2
@@ +1,3 @@
+// RUN: %clang_cc1 %s -emit-llvm -backend-option -time-passes -o - 2>&1 |
FileCheck %s
+// RUN: %clang_cc1 %s -emit-l
Anastasia added inline comments.
Comment at: test/Frontend/backend-option.c:2
@@ +1,3 @@
+// RUN: %clang_cc1 %s -emit-llvm -backend-option -time-passes -o - 2>&1 |
FileCheck %s
+// RUN: %clang_cc1 %s -emit-llvm -backend-option -time-passes -o - -triple
spir-unknown-unknown 2>&1
Anastasia added inline comments.
Comment at: lib/AST/ASTContext.cpp:3121
@@ +3120,3 @@
+QualType ASTContext::getPipeType(QualType T) const {
+ // Unique pointers, to guarantee there is only one pointer of a particular
+ // structure.
Could we update the comment
Anastasia accepted this revision.
Anastasia added a reviewer: Anastasia.
Anastasia added a comment.
LGTM!
Comment at: lib/CodeGen/CGOpenCLRuntime.cpp:108
@@ +107,3 @@
+PipeTy = llvm::PointerType::get(llvm::StructType::create(
+ CGM.getLLVMContext(), "opencl.pipe_t"), Pi
Author: stulova
Date: Tue Jan 5 08:39:27 2016
New Revision: 256838
URL: http://llvm.org/viewvc/llvm-project?rev=256838&view=rev
Log:
[OpenCL] Disallow taking an address of a function.
An undecorated function designator implies taking the address of a function,
which is illegal in OpenCL. Impleme
Anastasia added inline comments.
Comment at: lib/CodeGen/CGOpenCLRuntime.cpp:108
@@ +107,3 @@
+PipeTy = llvm::PointerType::get(llvm::StructType::create(
+ CGM.getLLVMContext(), "opencl.pipe_t"), PipeAddrSpc);
+ }
pxli168 wrote:
> Anastasia wrote:
> > Yes
Anastasia added inline comments.
Comment at: include/clang/Basic/Builtins.def:1255
@@ -1254,1 +1254,3 @@
+// OpenCL 2.0 Pipe functions.
+// We need the variadic prototype, since the packet type could be anything.
Could we put reference to spec section?
Anastasia added a comment.
Do you have any tests? We won't be able to commit without. Also having them
would help understanding what this modification does.
Comment at: include/clang/Basic/Builtins.def:1260
@@ +1259,3 @@
+
+LANGBUILTIN(reserve_read_pipe, "i.", "tn", OCLC_LANG)
Anastasia added inline comments.
Comment at: include/clang/Basic/Builtins.def:1260
@@ +1259,3 @@
+
+LANGBUILTIN(reserve_read_pipe, "i.", "tn", OCLC_LANG)
+LANGBUILTIN(reserve_write_pipe, "i.", "tn", OCLC_LANG)
Ok, this way it means variable number of arg which isn
Anastasia added inline comments.
Comment at: lib/Sema/SemaDeclAttr.cpp:4934
@@ +4933,3 @@
+const Type *DeclTy = PDecl->getType().getCanonicalType().getTypePtr();
+if (AccessAttr->isReadWrite()) {
+ if (DeclTy->isPipeType() ||
In the case of failure, w
Anastasia added inline comments.
Comment at: lib/CodeGen/CGBuiltin.cpp:2033
@@ +2032,3 @@
+ *Arg1 = EmitScalarExpr(E->getArg(1));
+llvm::Type *ReservedIDTy = ConvertType(getContext().OCLReserveIDTy);
+
pekka.jaaskelainen wrote:
> Anastasia wrote:
> >
Anastasia added a comment.
Also generally it's much nicer to have small logically isolated changes
committed. I can see how you could partition this change into into pipe, blocks
and images.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:593
@@ -592,2 +592,3 @@
InG
Anastasia added inline comments.
Comment at: include/clang/Basic/Builtins.def:1255
@@ -1254,1 +1254,3 @@
+// OpenCL v2.0 s6.13.16, s9.17.3.5 -- Pipe functions.
+// We need the generic prototype, since the packet type could be anything.
Could you remove one -?
=
Anastasia added inline comments.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:593
@@ -592,2 +592,3 @@
+def err_no_declarators : Error<"declaration does not declare anything">;
def ext_typedef_without_a_name : ExtWarn<"typedef requires a name">,
InGroup;
-
Anastasia added inline comments.
Comment at: test/SemaOpenCL/invalid-pipe-builtin-cl2.0.cl:37
@@ +36,3 @@
+ write_pipe(p, tmp); // expected-error {{invalid argument type to function
write_pipe (expecting: 'int *')}}
+ read_pipe(p, ptr);// expected-error {{invalid pipe acc
Anastasia added inline comments.
Comment at: lib/CodeGen/CGBuiltin.cpp:1981
@@ +1980,3 @@
+ const char *Name =
+ (BuiltinID == Builtin::BIread_pipe) ? "read_pipe_2" : "write_pipe_2";
+ // Re-Creating the function type for this call, since the original type
-
Anastasia added inline comments.
Comment at: lib/CodeGen/CGBuiltin.cpp:2082
@@ +2081,3 @@
+if (BuiltinID == Builtin::BIget_pipe_num_packets)
+ Name = "get_pipe_num_packets";
+else
prepend "__" here too!
Comment at: lib/Sema/SemaChec
Anastasia added inline comments.
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:7670
@@ +7669,3 @@
+ "%0 can only be used as a function parameter">;
+def err_opencl_atomic_init_addressspace : Error<
+ "initialization of atomic variables is restricted to variables in glob
Anastasia added a comment.
I think some tests for new diagnostics are still missing?
Comment at: include/clang/Basic/DiagnosticSemaKinds.td:7676
@@ +7675,3 @@
+def err_opencl_invalid_read_write : Error<
+ "access qualifier read_write can not be used for %0 %select{|before
CL2.
Anastasia added inline comments.
Comment at: lib/Sema/SemaDecl.cpp:7255
@@ -7209,3 +7254,3 @@
return PtrPtrKernelParam;
-return PointeeType.getAddressSpace() == 0 ? PrivatePtrKernelParam
- : PtrKernelParam;
+// Now generi
Anastasia added a comment.
A few nitpicks here, otherwise it seems we are in a good shape. I hope this
will hit trunk soon. :)
Comment at: lib/CodeGen/CGBuiltin.cpp:1966
@@ -1965,1 +1965,3 @@
}
+
+ case Builtin::BIread_pipe:
Can you put a comment with the s
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
LGTM! Could you please remove the line with printf before committing (see
comment above)?
Comment at: lib/CodeGen/CGBuiltin.cpp:1976
@@ +1975,3 @@
+getContext()
Anastasia added a comment.
I am generally not clear about the scope of this patch. Is it intended for
OpenCL or C++?
As for OpenCL, boolean vector types are not permitted (Table 6.2). Also
conversions between vector types are disallowed in general (Section 6.2.2) but
unfortunately Clang doesn'
Anastasia added a comment.
Could you please copy us in CC?
@Pekka, do you think it would make sense to include a description of the new
OpenCL features in the release note too? Or shall we wait for the completion of
OpenCL 2.0 support (hopefully in next release)? Could do both as well I guess.
Anastasia added inline comments.
Comment at: lib/Sema/SemaDeclAttr.cpp:5705
@@ -5669,8 +5704,3 @@
- // Walk the declarator structure, applying decl attributes that were in a
type
- // position to the decl itself. This handles cases like:
- // int *__attr__(x)** D;
- // w
Anastasia added a comment.
OpenCL side seems fine! Thanks for adding OpenCL diagnostic btw. I think we
will also need to forbid the invalid conversions too at some point.
Comment at: lib/Sema/SemaExpr.cpp:5715
@@ +5714,3 @@
+ // when compiling code as e.g. C++)
+ uint64_t src
Anastasia added a comment.
Xiuli, do you still plan to continue here?
I was just thinking if it would make sense to re-upload the review since the
line numbers got broken due to full diff.
Also it would be nice to partition to several independent commits/reviews.
Let's say:
- Blocks diagnosti
Hi Hans,
Could you please merge Clang commit r258782 into release 3.8.
It adds Pipe BIFs to be used along with Pipe type committed earlier (in
r257254).
Thanks,
Anastasia
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cg
Anastasia accepted this revision.
Anastasia added a comment.
This revision is now accepted and ready to land.
Seems sensible. LGTM!
http://reviews.llvm.org/D15721
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/
Anastasia added a comment.
No, this shouldn't happen! There shouldn't be any difference in emitted IR
depending on a platform. I also don't see any code in CodeGen that could
specialize.
Is there a way to reproduce your compilation? Passing any triple?
http://reviews.llvm.org/D15603
__
Anastasia added a comment.
Yes, I see that it happens only for some vector types. The CodeGen follows
quite different paths for both targets. And in the case of s390x-linux-gnu it
ends up in ABIArgInfo::Indirect case of the second switch statement where an
additional pointer will be added here:
Anastasia added a comment.
Btw, just to be clear in my previous comment I was referring to the 2nd switch
statement in CodeGenTypes::GetFunctionType that contains the line:
ArgTypes[FirstIRArg] = LTy->getPointerTo();
http://reviews.llvm.org/D15603
_
Anastasia added inline comments.
Comment at: lib/Sema/SemaLookup.cpp:698
@@ +697,3 @@
+// tgmath.h, time.h, wchar.h and wctype.h are not available and cannot
+// be included by a program.
+if (S.getLangOpts().OpenCL &&
pxli168 wrote:
> I th
Anastasia added inline comments.
Comment at: include/clang/Basic/Attr.td:661
@@ +660,3 @@
+ let Args = [UnsignedArgument<"UnrollHint">];
+ let Documentation = [Undocumented];
+}
I think undocumented is not allowed any longer.
I suggest you to check OpenCLGeneri
Ping! Re-attaching the final patch.
-Original Message-
From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of
Anastasia Stulova via cfe-commits
Sent: 21 October 2015 11:49
To: 'Pekka Jääskeläinen'; cfe-commits@lists.llvm.org
Subject: RE: [Patch][OpenCL] Cus
Author: stulova
Date: Mon Nov 23 05:14:44 2015
New Revision: 253863
URL: http://llvm.org/viewvc/llvm-project?rev=253863&view=rev
Log:
[OpenCL 2.0] Apply default address space (AS).
If AS of a variable/parameter declaration is not set by the source,
OpenCL v2.0 s6.5 defines explicit rules for defa
Anastasia added a subscriber: Anastasia.
Comment at: include/clang/AST/Type.h:5018
@@ +5017,3 @@
+/// PipeType - OpenCL20.
+///
+class PipeType : public Type, public llvm::FoldingSetNode {
Any reason for an empty comment line here?
Comment at: li
Anastasia added inline comments.
Comment at: include/clang/AST/Type.h:5019
@@ +5018,3 @@
+///
+class PipeType : public Type, public llvm::FoldingSetNode {
+ QualType ElementType;
Not related to this change though, but I was just thinking that it might be
possibl
Anastasia created this revision.
Anastasia added a reviewer: pekka.jaaskelainen.
Anastasia added a subscriber: cfe-commits.
In OpenCL2.0 s6.5 all pointers are implicitly in generic address space unless
address space is explicitly specified.
Correct the behavior of NULL constant detection - gener
Anastasia added a comment.
I've made a few small comments. Don't see any reply though.
http://reviews.llvm.org/D14441
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
i32* {{.*}} monotonic
Thank you!
Anastasia
-Original Message-
From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of
Anastasia Stulova via cfe-commits
Sent: 23 November 2015 10:32
To: cfe-commits@lists.llvm.org; 'Pekka Jääskeläinen'
Subject: RE: [Patch][
Author: stulova
Date: Fri Dec 11 07:49:15 2015
New Revision: 255337
URL: http://llvm.org/viewvc/llvm-project?rev=255337&view=rev
Log:
[OpenCL 2.0] In OpenCL v2.0 s6.5 all pointers are implicitly in generic
address space unless address space is explicitly specified.
Correct the behavior of NULL co
Author: stulova
Date: Fri Dec 11 09:23:00 2015
New Revision: 255339
URL: http://llvm.org/viewvc/llvm-project?rev=255339&view=rev
Log:
Reverting r255337 as it seems to kill bots. Needs investigation.
Removed:
cfe/trunk/test/SemaOpenCL/null_literal.cl
Modified:
cfe/trunk/lib/AST/Expr.cpp
Author: stulova
Date: Fri Dec 11 11:41:19 2015
New Revision: 255346
URL: http://llvm.org/viewvc/llvm-project?rev=255346&view=rev
Log:
[OpenCL 2.0] In OpenCL v2.0 s6.5 all pointers are implicitly in generic
address space unless address space is explicitly specified.
Correct the behavior of NULL co
Hi Pekka,
Re-attaching as a full patch again as something went wrong earlier with the
diff wrapping in the email.
Thanks,
Anastasia
-Original Message-
From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of
Anastasia Stulova via cfe-commits
Sent: 07 December 2015 17
Author: stulova
Date: Tue Dec 22 09:14:54 2015
New Revision: 256243
URL: http://llvm.org/viewvc/llvm-project?rev=256243&view=rev
Log:
[OpenCL] Fix atomic Builtins check for address spaces of non-atomic pointer
If there are two pointers passed to an atomic Builtin,
Clang doesn't allow the second
g earlier with the
> diff wrapping in the email.
>
> Thanks,
> Anastasia
>
> -Original Message-
> From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On
> Behalf Of Anastasia Stulova via cfe-commits
> Sent: 07 December 2015 17:25
> To: 'Pek
Anastasia added inline comments.
Comment at: lib/AST/ASTContext.cpp:3121
@@ +3120,3 @@
+QualType ASTContext::getPipeType(QualType T) const {
+ // Unique pointers, to guarantee there is only one pointer of a particular
+ // structure.
I don't think this comment i
@@ -6275,13 +6278,46 @@ static FunctionDecl *rewriteBuiltinFunctionDecl(Sema
*Sema, ASTContext &Context,
OverloadParams.push_back(Context.getPointerType(PointeeType));
}
+ QualType ReturnTy = FT->getReturnType();
+ QualType OverloadReturnTy = ReturnTy;
+ if (ReturnTy
@@ -0,0 +1,255 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
+// RUN: %clang_cc1 %s -O0 -triple amdgcn-amd-amdhsa -cl-std=CL1.2 \
+// RUN: -emit-llvm -o - | FileCheck --check-prefix=OPENCL12 %s
+// RUN: %clang_cc1 %s -
@@ -1981,6 +1981,29 @@ static bool OpenCLBuiltinToAddr(Sema &S, unsigned
BuiltinID, CallExpr *Call) {
return false;
}
+// In OpenCL, __builtin_alloca_* should return a pointer to address space
+// that corresponds to the stack address space i.e private address space.
+stati
https://github.com/AnastasiaStulova approved this pull request.
Makes sense! Thanks.
https://github.com/llvm/llvm-project/pull/92140
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
AnastasiaStulova wrote:
I think that the diagnostic change is reasonable. Clang doesn't support OpenCL
C++ at present so we won't need to worry about it. However the mission of C++
for OpenCL is to track C++ and track OpenCL i.e. we may want to update to C++
with reflection. So it would be goo
@@ -816,6 +816,11 @@ class FPOptions {
setAllowFPReassociate(LO.AllowFPReassoc);
setNoHonorNaNs(LO.NoHonorNaNs);
setNoHonorInfs(LO.NoHonorInfs);
+// Ensure that if FiniteMathOnly is enabled, NoHonorNaNs and NoHonorInfs
are
+// also enabled. This is because
AnastasiaStulova wrote:
Can you please provide more details about the design of the interface for
setting the offload targets? Is the idea here to mirror clang's interface?
While clang has a uniform design for [the main target
triple](https://clang.llvm.org/docs/CrossCompilation.html#target-tr
AnastasiaStulova wrote:
Adding ``--offload-target=`` seems like a good idea since it
will be consistent with ``--target=``.
One related question I have - does Flang compile for one offload model or can
it mix those (let's say compile sources with mixed OpenACC and OpenMP pragmas)?
If mixing i
AnastasiaStulova wrote:
> In my opinion, the decision to potentially rename or move to a different set
> of offloading flags should be independent from this work, as it doesn't
> really add anything new, it only replicates one of the features clang already
> has. If a change to that is agreed
AnastasiaStulova wrote:
> > The only issue I see is that this PR adds a new driver flag that may be
> > used to compile the applications. Renaming the user visible flags is not
> > that easy. But if they get renamed before any compiler release then it
> > should be fine.
>
> Thank you for the
AnastasiaStulova wrote:
> From what I can tell, no-one except libclc is actually using this attribute?
> At least on github, the only matches I’ve found for
> __attribute__((assume("omp are in LLVM and various forks thereof. Given that
> it’s not particularly widely used, I don’t think removal
Author: Krystian Kuzniarek
Date: 2022-03-08T11:06:50Z
New Revision: 481f6818670aa86e426e326975aa6ea6035d72b3
URL:
https://github.com/llvm/llvm-project/commit/481f6818670aa86e426e326975aa6ea6035d72b3
DIFF:
https://github.com/llvm/llvm-project/commit/481f6818670aa86e426e326975aa6ea6035d72b3.diff
Author: Anastasia Stulova
Date: 2021-04-22T15:28:04+01:00
New Revision: 362958ac7346ba3539f819e9fe93d2529caad1e8
URL:
https://github.com/llvm/llvm-project/commit/362958ac7346ba3539f819e9fe93d2529caad1e8
DIFF:
https://github.com/llvm/llvm-project/commit/362958ac7346ba3539f819e9fe93d2529caad1e8.d
Author: Anastasia Stulova
Date: 2021-04-23T14:36:36+01:00
New Revision: fcb45b544d3da87e0aab895eaac7903197a6c58c
URL:
https://github.com/llvm/llvm-project/commit/fcb45b544d3da87e0aab895eaac7903197a6c58c
DIFF:
https://github.com/llvm/llvm-project/commit/fcb45b544d3da87e0aab895eaac7903197a6c58c.d
501 - 600 of 637 matches
Mail list logo