[clang] fix: C++ empty record with align lead to va_list out of sync (PR #72197)

2023-11-24 Thread via cfe-commits
https://github.com/hstk30-hw updated https://github.com/llvm/llvm-project/pull/72197 >From 2c8d9c8dcd9780749b788bc3029fc45373007ae0 Mon Sep 17 00:00:00 2001 From: hstk30-hw Date: Sat, 18 Nov 2023 11:00:29 + Subject: [PATCH] fix: empty record size > 64 with align let va_list get out of

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-11-24 Thread via cfe-commits
@@ -1030,6 +1030,7 @@ def err_capture_default_first : Error< def ext_decl_attrs_on_lambda : ExtWarn< "%select{an attribute specifier sequence|%0}1 in this position " "is a C++23 extension">, InGroup; +def ext_lambda : ExtWarn<"lambdas are a C++11 extension">, InGroup;

[clang] [clang] Fix sorting header paths (PR #73323)

2023-11-24 Thread David Blaikie via cfe-commits
dwblaikie wrote: So what breakage is caused by the sorting failure? Can that behavior be tested in some way to validate this change and ensure it doesn't regress in the future? https://github.com/llvm/llvm-project/pull/73323 ___ cfe-commits mailing

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: None (philnik777) Changes This is a fairly simple extension, but makes the life for people who have to support C++03 a lot easier. As a nice bonus, this also improves diagnostics, since lambdas are now properly recognized when parsing

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-11-24 Thread via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/73376 This is a fairly simple extension, but makes the life for people who have to support C++03 a lot easier. As a nice bonus, this also improves diagnostics, since lambdas are now properly recognized when parsing

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From 881d627cde823edded1c0fd1a72d9ffc2f4ee186 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From 2759d206be48d68dc93ed34efa782daf1097bb26 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From 9a11834bb5a8d2c0aa97311541ca5a2b9848c859 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From efb399b878830899cdabc2fe0ee9d6fd398df259 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From caa4a548adbab8532b6a3906e574eb9584914631 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff 5ac5c0e7d1007745456329dbcf05aa15b50c08c8 c015c1aa18e1048071dc59e637b7e20707b9ae83 --

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Ben Shi via cfe-commits
https://github.com/benshi001 updated https://github.com/llvm/llvm-project/pull/73335 >From c015c1aa18e1048071dc59e637b7e20707b9ae83 Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Fri, 24 Nov 2023 22:51:27 +0800 Subject: [PATCH] [clang][analyzer] Support `fputs` in the StreamChecker ---

[clang] [clang-format] Fix a bug in formating `#define A x:` (PR #73220)

2023-11-24 Thread Owen Pan via cfe-commits
@@ -1171,6 +1171,13 @@ void UnwrappedLineParser::parsePPDefine() { assert((int)Line->PPLevel >= 0); Line->InMacroBody = true; + if (FormatTok->is(tok::identifier) && + Tokens->peekNextToken()->is(tok::colon)) { +nextToken(); +nextToken(); +

[clang] [clang-format] Fix a bug in formating `#define A x:` (PR #73220)

2023-11-24 Thread Owen Pan via cfe-commits
https://github.com/owenca updated https://github.com/llvm/llvm-project/pull/73220 >From 0a8459053be654313efff8002ff3e171d8cd9d18 Mon Sep 17 00:00:00 2001 From: Owen Pan Date: Thu, 23 Nov 2023 00:41:41 -0800 Subject: [PATCH 1/2] [clang-format] Fix a bug in formating `#define A x:` Fixed

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Youngsuk Kim via cfe-commits
https://github.com/JOE1994 closed https://github.com/llvm/llvm-project/pull/73374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] bc85284 - [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (#73374)

2023-11-24 Thread via cfe-commits
Author: Youngsuk Kim Date: 2023-11-24T19:22:02-05:00 New Revision: bc85284273ea1e6efbf7367f736f7982459c652b URL: https://github.com/llvm/llvm-project/commit/bc85284273ea1e6efbf7367f736f7982459c652b DIFF: https://github.com/llvm/llvm-project/commit/bc85284273ea1e6efbf7367f736f7982459c652b.diff

[clang] 1a3b14d - [RISCV] Add C intrinsics for scalar bitmanip and crypto

2023-11-24 Thread Craig Topper via cfe-commits
Author: Craig Topper Date: 2023-11-24T16:17:22-08:00 New Revision: 1a3b14d26152ab7e7352c8e7aa97ec880cdac82d URL: https://github.com/llvm/llvm-project/commit/1a3b14d26152ab7e7352c8e7aa97ec880cdac82d DIFF: https://github.com/llvm/llvm-project/commit/1a3b14d26152ab7e7352c8e7aa97ec880cdac82d.diff

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Piotr Zegar via cfe-commits
@@ -658,27 +658,27 @@ void check_match_co_return() { co_return 1; } )cpp"; - EXPECT_TRUE(matchesConditionally(CoReturnCode, - coreturnStmt(isExpansionInMainFile()), - true, {"-std=c++20", "-I/"}, M)); +

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 approved this pull request. Thanks, this was never properly cleaned up after moving to opaque pointers. https://github.com/llvm/llvm-project/pull/73374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Youngsuk Kim via cfe-commits
https://github.com/JOE1994 updated https://github.com/llvm/llvm-project/pull/73374 >From cd36ba2c52f14051cbe82efc6390a036f75d2b46 Mon Sep 17 00:00:00 2001 From: Youngsuk Kim Date: Thu, 23 Nov 2023 10:54:07 -0600 Subject: [PATCH 1/3] [clang-linker-wrapper] Re-use type returned from

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Joseph Huber via cfe-commits
@@ -457,45 +457,42 @@ void createRegisterFatbinFunction(Module , GlobalVariable *FatbinDesc, IsHIP ? ".hip.fatbin_unreg" : ".cuda.fatbin_unreg", ); DtorFunc->setSection(".text.startup"); + auto *PtrTy = PointerType::getUnqual(C); + // Get the

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff 12563ea6403f6f5a467862732b92db3517626cd2 3d46f90bc8cf5d94ea5adae80bc9c96e11958b32 --

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Youngsuk Kim via cfe-commits
https://github.com/JOE1994 updated https://github.com/llvm/llvm-project/pull/73374 >From cd36ba2c52f14051cbe82efc6390a036f75d2b46 Mon Sep 17 00:00:00 2001 From: Youngsuk Kim Date: Thu, 23 Nov 2023 10:54:07 -0600 Subject: [PATCH 1/2] [clang-linker-wrapper] Re-use type returned from

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
@@ -658,27 +658,27 @@ void check_match_co_return() { co_return 1; } )cpp"; - EXPECT_TRUE(matchesConditionally(CoReturnCode, - coreturnStmt(isExpansionInMainFile()), - true, {"-std=c++20", "-I/"}, M)); +

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Julian Schmidt (5chmidti) Changes Adds support for the following matchers related to `CXXFoldExpr`: `cxxFoldExpr`, `callee`, `hasInit`, `hasPattern`, `isRightFold`, `isLeftFold`, `isUnaryFold`, `isBinaryFold`, `hasOperator`, `hasLHS`,

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
@@ -4532,6 +4563,139 @@ AST_POLYMORPHIC_MATCHER_P2(hasArgument, return InnerMatcher.matches(*Arg->IgnoreParenImpCasts(), Finder, Builder); } +/// Matches the operand that does not contain the parameter pack. +/// +/// Example matches `(0 + ... + args)` and `(args * ... *

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
@@ -319,6 +319,7 @@ RegistryMaps::RegistryMaps() { REGISTER_MATCHER(hasExplicitSpecifier); REGISTER_MATCHER(hasExternalFormalLinkage); REGISTER_MATCHER(hasFalseExpression); + REGISTER_MATCHER(hasFoldInit); 5chmidti wrote: done

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
5chmidti wrote: > Pull request doesn't say anything. Fixed, I just listed the matchers that were added/adjusted for `CXXFoldExpr` support. > Whats a purpose of those matchers (except only to have them). Sorry, forgot to add that comment. I didn't want that to be part of the pr description

[clang] afe8b93 - [clang] Avoid memcopy for small structure with padding under -ftrivial-auto-var-init (#71677)

2023-11-24 Thread via cfe-commits
Author: serge-sans-paille Date: 2023-11-25T00:11:20+01:00 New Revision: afe8b93ffdfef5d8879e1894b9d7dda40dee2b8d URL: https://github.com/llvm/llvm-project/commit/afe8b93ffdfef5d8879e1894b9d7dda40dee2b8d DIFF:

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
https://github.com/5chmidti updated https://github.com/llvm/llvm-project/pull/71245 >From ae352f244a031b587d136423e0e3ef51f522c771 Mon Sep 17 00:00:00 2001 From: Julian Schmidt <44101708+5chmi...@users.noreply.github.com> Date: Fri, 3 Nov 2023 21:51:57 +0100 Subject: [PATCH 1/5]

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 edited https://github.com/llvm/llvm-project/pull/73374 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Joseph Huber via cfe-commits
@@ -458,44 +459,39 @@ void createRegisterFatbinFunction(Module , GlobalVariable *FatbinDesc, DtorFunc->setSection(".text.startup"); // Get the __cudaRegisterFatBinary function declaration. - auto *RegFatTy = FunctionType::get(PointerType::getUnqual(C)->getPointerTo(), -

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Youngsuk Kim (JOE1994) Changes Multiple calls to `PointerType::getUnqual(C)`, and calls to `Type::getPointerTo(AddrSpace=0)` on them all result in the same type. Clean them up to re-use the same `PtrTy` variable within function

[clang] [clang-linker-wrapper] Re-use type returned from 'PointerType::getUnqual(C)' (NFC) (PR #73374)

2023-11-24 Thread Youngsuk Kim via cfe-commits
https://github.com/JOE1994 created https://github.com/llvm/llvm-project/pull/73374 Multiple calls to `PointerType::getUnqual(C)`, and calls to `Type::getPointerTo(AddrSpace=0)` on them all result in the same type. Clean them up to re-use the same `PtrTy` variable within function

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Shilei Tian via cfe-commits
https://github.com/shiltian closed https://github.com/llvm/llvm-project/pull/70233 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 85b2e9c - [Clang][OpenMP] Emit unsupported directive error (#70233)

2023-11-24 Thread via cfe-commits
Author: Raymond Chang Date: 2023-11-24T16:28:32-05:00 New Revision: 85b2e9c02295a54100d41207cddce5908b8c513f URL: https://github.com/llvm/llvm-project/commit/85b2e9c02295a54100d41207cddce5908b8c513f DIFF: https://github.com/llvm/llvm-project/commit/85b2e9c02295a54100d41207cddce5908b8c513f.diff

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Raymond Chang via cfe-commits
@@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -emit-llvm -fopenmp -disable-llvm-passes %s -verify=expected + +// expected-error@+2 {{cannot compile this OpenMP dispatch directive yet}} +void a(){ +#pragma omp dispatch +a(); +} rkchang wrote: Added, thanks

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Raymond Chang via cfe-commits
https://github.com/rkchang updated https://github.com/llvm/llvm-project/pull/70233 >From 72c056b825963d0de1dcf3fe3a6de922098d0ad9 Mon Sep 17 00:00:00 2001 From: Raymond Chang Date: Thu, 12 Oct 2023 01:51:03 -0400 Subject: [PATCH 1/3] Emit unsupported directive error ---

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Shilei Tian via cfe-commits
https://github.com/shiltian edited https://github.com/llvm/llvm-project/pull/70233 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Shilei Tian via cfe-commits
@@ -0,0 +1,7 @@ +// RUN: %clang_cc1 -emit-llvm -fopenmp -disable-llvm-passes %s -verify=expected + +// expected-error@+2 {{cannot compile this OpenMP dispatch directive yet}} +void a(){ +#pragma omp dispatch +a(); +} shiltian wrote: Leave an empty line

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-24 Thread Shilei Tian via cfe-commits
https://github.com/shiltian approved this pull request. LG with a nit https://github.com/llvm/llvm-project/pull/70233 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][ExtractAPI] Add support for blocks in declaration fragments (PR #73369)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Daniel Grumberg (daniel-grumberg) Changes Ensure that block types get represented correctly in declaration fragments, as block parameter names are important for documentation clients we need a separate system from getFragmentsForType in

[clang] [clang][ExtractAPI] Add support for blocks in declaration fragments (PR #73369)

2023-11-24 Thread Daniel Grumberg via cfe-commits
https://github.com/daniel-grumberg created https://github.com/llvm/llvm-project/pull/73369 Ensure that block types get represented correctly in declaration fragments, as block parameter names are important for documentation clients we need a separate system from getFragmentsForType in order

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
https://github.com/5chmidti edited https://github.com/llvm/llvm-project/pull/71245 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Avoid recalculating TBAA base type info (PR #73264)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang @llvm/pr-subscribers-clang-codegen Author: Nathan Sidwell (urnathan) Changes I noticed that TBAA BaseTypeMetadataCache can legitimately store null values, but it also uses that to mean 'no entry'. Thus nullptr entries get continually

[clang] [clang][NFC] Adjust TBAA Base Info API (PR #73263)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-codegen Author: Nathan Sidwell (urnathan) Changes I noticed a couple of minor issues with CodeGenTBAA::getBaseTypeInfo. 1) isValidBaseType explicitly checks for a reference type to return false, but then also returns false for all non-record

[clang] [clang][NFC] Adjust TBAA Base Info API (PR #73263)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Nathan Sidwell (urnathan) Changes I noticed a couple of minor issues with CodeGenTBAA::getBaseTypeInfo. 1) isValidBaseType explicitly checks for a reference type to return false, but then also returns false for all non-record types. Just

[clang] [clang] Avoid recalculating TBAA base type info (PR #73264)

2023-11-24 Thread Nathan Sidwell via cfe-commits
https://github.com/urnathan ready_for_review https://github.com/llvm/llvm-project/pull/73264 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][NFC] Adjust TBAA Base Info API (PR #73263)

2023-11-24 Thread Nathan Sidwell via cfe-commits
https://github.com/urnathan ready_for_review https://github.com/llvm/llvm-project/pull/73263 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libcxx] [libunwind] [llvm] [libc++] Allow running the test suite with optimizations (PR #68753)

2023-11-24 Thread Mark de Wever via cfe-commits
https://github.com/mordante approved this pull request. LGTM! https://github.com/llvm/llvm-project/pull/68753 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AMDGPU] Treat printf as builtin for OpenCL (PR #72554)

2023-11-24 Thread Vikram Hegde via cfe-commits
https://github.com/vikramRH edited https://github.com/llvm/llvm-project/pull/72554 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [AMDGPU] Treat printf as builtin for OpenCL (PR #72554)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -406,5 +410,9 @@ TARGET_BUILTIN(__builtin_amdgcn_cvt_pk_fp8_f32, "iffiIb", "nc", "fp8-insts") TARGET_BUILTIN(__builtin_amdgcn_cvt_sr_bf8_f32, "ifiiIi", "nc", "fp8-insts") TARGET_BUILTIN(__builtin_amdgcn_cvt_sr_fp8_f32, "ifiiIi", "nc", "fp8-insts") +// OpenCL

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -26,28 +26,31 @@ using namespace llvm; #define DEBUG_TYPE "amdgpu-emit-printf" -static Value *fitArgInto64Bits(IRBuilder<> , Value *Arg) { +static Value *fitArgInto64Bits(IRBuilder<> , Value *Arg, + bool IsBuffered) { + const DataLayout =

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -26,28 +26,31 @@ using namespace llvm; #define DEBUG_TYPE "amdgpu-emit-printf" -static Value *fitArgInto64Bits(IRBuilder<> , Value *Arg) { +static Value *fitArgInto64Bits(IRBuilder<> , Value *Arg, + bool IsBuffered) { + const DataLayout =

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -170,20 +173,49 @@ static Value *appendString(IRBuilder<> , Value *Desc, Value *Arg, return callAppendStringN(Builder, Desc, Arg, Length, IsLast); } +static Value *appendVectorArg(IRBuilder<> , Value *Desc, Value *Arg, + bool IsLast, bool

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -194,6 +226,8 @@ static void locateCStrings(SparseBitVector<8> , StringRef Str) { SpecPos += 2; continue; } +if (Str.find_first_of("v", SpecPos) != StringRef::npos) vikramRH wrote: Fixed https://github.com/llvm/llvm-project/pull/72556

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -170,20 +173,49 @@ static Value *appendString(IRBuilder<> , Value *Desc, Value *Arg, return callAppendStringN(Builder, Desc, Arg, Length, IsLast); } +static Value *appendVectorArg(IRBuilder<> , Value *Desc, Value *Arg, + bool IsLast, bool

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
@@ -1,12 +1,68 @@ // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py -// RUN: %clang_cc1 -cl-std=CL1.2 -triple amdgcn-amd-amdhsa -disable-llvm-passes -emit-llvm -o - %s | FileCheck %s +// RUN: %clang_cc1 -cl-std=CL1.2 -triple amdgcn-amd-amdhsa

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Piotr Zegar via cfe-commits
@@ -319,6 +319,7 @@ RegistryMaps::RegistryMaps() { REGISTER_MATCHER(hasExplicitSpecifier); REGISTER_MATCHER(hasExternalFormalLinkage); REGISTER_MATCHER(hasFalseExpression); + REGISTER_MATCHER(hasFoldInit); PiotrZSL wrote: I think that you should also

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Piotr Zegar via cfe-commits
https://github.com/PiotrZSL edited https://github.com/llvm/llvm-project/pull/71245 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Piotr Zegar via cfe-commits
https://github.com/PiotrZSL commented: Overall looks fine, but I didn't check test too deeply. Someone said not so long ago that we do not want to add matchers unless there is some usecase for them in some of the tools. Pull request doesn't say anything. Whats a purpose of those matchers

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Piotr Zegar via cfe-commits
@@ -4532,6 +4563,139 @@ AST_POLYMORPHIC_MATCHER_P2(hasArgument, return InnerMatcher.matches(*Arg->IgnoreParenImpCasts(), Finder, Builder); } +/// Matches the operand that does not contain the parameter pack. +/// +/// Example matches `(0 + ... + args)` and `(args * ... *

[clang] [clang][ASTImporter] Improve structural equivalence of overloadable operators. (PR #72242)

2023-11-24 Thread via cfe-commits
@@ -437,12 +439,67 @@ class StmtComparer { }; } // namespace +static bool IsStructurallyEquivalent(StructuralEquivalenceContext , + const UnaryOperator *E1, + const CXXOperatorCallExpr *E2) { + return

[clang] [analyzer] Switch to PostStmt callbacks in ArrayBoundV2 (PR #72107)

2023-11-24 Thread via cfe-commits
=?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy Message-ID: In-Reply-To: DonatNagyE wrote: I updated the PR to allow `[size]` for creating the after-the-end pointer of an array. My implementation interprets this corner case narrowly to limit

[clang] [clang] Use the materialized temporary's type while creating the APValue (PR #73355)

2023-11-24 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff d896b1f5a614daef1c3aa65cb3521ec82bc728d5 3ff1b189cf55d3705b2823dc39eaaf710fa26541 --

[clang] [llvm] Enable OpenCL hostcall printf (WIP) (PR #72556)

2023-11-24 Thread Vikram Hegde via cfe-commits
https://github.com/vikramRH updated https://github.com/llvm/llvm-project/pull/72556 >From 6ace9d0a51064be189093ca3bb42416aafadb7f6 Mon Sep 17 00:00:00 2001 From: Vikram Date: Fri, 10 Nov 2023 09:39:41 + Subject: [PATCH 1/4] [AMDGPU] Treat printf as builtin for OpenCL ---

[clang] [clang] Use the materialized temporary's type while creating the APValue (PR #73355)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Younan Zhang (zyn0217) Changes See https://github.com/llvm/llvm-project/issues/72025 for the bug and its diagnosis. --- Full diff: https://github.com/llvm/llvm-project/pull/73355.diff 3 Files Affected: - (modified)

[clang] [clang] Use the materialized temporary's type while creating the APValue (PR #73355)

2023-11-24 Thread Younan Zhang via cfe-commits
https://github.com/zyn0217 created https://github.com/llvm/llvm-project/pull/73355 See https://github.com/llvm/llvm-project/issues/72025 for the bug and its diagnosis. >From 3ff1b189cf55d3705b2823dc39eaaf710fa26541 Mon Sep 17 00:00:00 2001 From: Younan Zhang Date: Sat, 25 Nov 2023 02:01:22

[clang-tools-extra] [llvm] [RISCV][Zba] Optimize mul with SH*ADD (PR #68144)

2023-11-24 Thread Alexandr Lekomtsev via cfe-commits
@@ -983,6 +983,1299 @@ define i64 @mul81(i64 %a) { ret i64 %c } + +define i64 @mul153(i64 %a) { +; RV64I-LABEL: mul153: vacma wrote: Thanks for your feedback, tests show that 3 shXadds is _a little_ slower than mul, but for some reason GCC uses 3

[clang] [analyzer] Switch to PostStmt callbacks in ArrayBoundV2 (PR #72107)

2023-11-24 Thread via cfe-commits
=?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy Message-ID: In-Reply-To: https://github.com/DonatNagyE updated https://github.com/llvm/llvm-project/pull/72107 >From ab102e949994a4462382e4c10c0153d61fb00306 Mon Sep 17 00:00:00 2001 From:

[clang] [analyzer] Switch to PostStmt callbacks in ArrayBoundV2 (PR #72107)

2023-11-24 Thread via cfe-commits
=?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy Message-ID: In-Reply-To: https://github.com/DonatNagyE updated https://github.com/llvm/llvm-project/pull/72107 >From ab102e949994a4462382e4c10c0153d61fb00306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Don=C3=A1t=20Nagy?=

[clang] [Clang][SME2] Add outer product and accumulate/subtract builtins (PR #71176)

2023-11-24 Thread Kerry McLaughlin via cfe-commits
@@ -0,0 +1,170 @@ +// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py + +// REQUIRES: aarch64-registered-target + +// RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sme2 -target-feature +sve -S -disable-O0-optnone -Werror -Wall

[clang] [Clang][SME2] Add outer product and accumulate/subtract builtins (PR #71176)

2023-11-24 Thread Kerry McLaughlin via cfe-commits
@@ -298,3 +298,19 @@ multiclass ZAAddSub { defm SVADD : ZAAddSub<"add">; defm SVSUB : ZAAddSub<"sub">; + +// +// Outer produce and accumulate/subtract +// + +let TargetGuard = "sme2" in { + def SVSMOPA : Inst<"svmopa_za32[_{d}]_m", "viPPdd", "s", MergeNone,

[clang] [Clang][SME2] Add outer product and accumulate/subtract builtins (PR #71176)

2023-11-24 Thread Kerry McLaughlin via cfe-commits
https://github.com/kmclaughlin-arm updated https://github.com/llvm/llvm-project/pull/71176 >From c975abe9015d5c9f5f7c7388101900cbcf738ab6 Mon Sep 17 00:00:00 2001 From: Kerry McLaughlin Date: Thu, 2 Nov 2023 17:02:32 + Subject: [PATCH 1/3] [Clang][SME2] Add outer product and

[flang] [clang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Kiran Chandramohan via cfe-commits
https://github.com/kiranchandramohan approved this pull request. LG. Thanks for the patch and the changes. https://github.com/llvm/llvm-project/pull/73124 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[libc] [libcxx] [lld] [clang] [llvm] [compiler-rt] [flang] Fix ISel crash when lowering BUILD_VECTOR (PR #73186)

2023-11-24 Thread David Li via cfe-commits
@@ -986,15 +1003,15 @@ void X86DAGToDAGISel::PreprocessISelDAG() { case X86ISD::VBROADCAST: { MVT VT = N->getSimpleValueType(0); // Emulate v32i16/v64i8 broadcast without BWI. - if (!Subtarget->hasBWI() && (VT == MVT::v32i16 || VT == MVT::v64i8)) { -

[clang] [flang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Michael Klemm via cfe-commits
@@ -0,0 +1,15 @@ +! UNSUPPORTED: system-windows + +! RUN: %flang -x ir -o %t.c-object -c %S/Inputs/main_dupes.ll +! RUN: %flang -o %t -c %s +! RUN: not %flang -o %t.exe %t %t.c-object 2>&1 mjklemm wrote: I'd actually prefer to have a separate test for this, as a

[clang] [flang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Michael Klemm via cfe-commits
mjklemm wrote: > LGTM, thank you for taking care of this  > > Dare I ask - what's "dupes"? I only found > [dupe](https://dictionary.cambridge.org/dictionary/english/dupe). Also, > please wait for @kiranchandramohan to approve before merging this :) I used "dupes" in the sense of being

[clang] [clang][ASTMatcher] Add matchers for CXXFoldExpr (PR #71245)

2023-11-24 Thread Julian Schmidt via cfe-commits
5chmidti wrote: @EugeneZelenko sorry for the direct ping, but I know you are one of the people that are active with labels (thanks btw). Could you please reapply the `clang` (or maybe the `clang:frontend` is a better fit) label to this pr? A now fixed issue with the pr subscriber notification

[clang] [flang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Andrzej Warzyński via cfe-commits
https://github.com/banach-space edited https://github.com/llvm/llvm-project/pull/73124 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [flang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Andrzej Warzyński via cfe-commits
@@ -0,0 +1,15 @@ +! UNSUPPORTED: system-windows + +! RUN: %flang -x ir -o %t.c-object -c %S/Inputs/main_dupes.ll +! RUN: %flang -o %t -c %s +! RUN: not %flang -o %t.exe %t %t.c-object 2>&1 banach-space wrote: [nit] You could add a "valid"/"working" compilation

[flang] [clang] [flang][Driver] Let the linker fail on multiple definitions of main() (PR #73124)

2023-11-24 Thread Andrzej Warzyński via cfe-commits
https://github.com/banach-space approved this pull request. LGTM, thank you for taking care of this  Dare I ask - what's "dupes"? I only found [dupe](https://dictionary.cambridge.org/dictionary/english/dupe). Also, please wait for @kiranchandramohan to approve before merging this :)

[clang-tools-extra] [llvm] [RISCV][Zba] Optimize mul with SH*ADD (PR #68144)

2023-11-24 Thread Craig Topper via cfe-commits
@@ -983,6 +983,1299 @@ define i64 @mul81(i64 %a) { ret i64 %c } + +define i64 @mul153(i64 %a) { +; RV64I-LABEL: mul153: topperc wrote: llvm-mca doesn't think this is an improvement for sifive-x280 https://godbolt.org/z/6ahP11xrq

[clang] [llvm] [lld] [compiler-rt] [libcxx] [libc] [flang] Fix ISel crash when lowering BUILD_VECTOR (PR #73186)

2023-11-24 Thread Simon Pilgrim via cfe-commits
@@ -986,15 +1003,15 @@ void X86DAGToDAGISel::PreprocessISelDAG() { case X86ISD::VBROADCAST: { MVT VT = N->getSimpleValueType(0); // Emulate v32i16/v64i8 broadcast without BWI. - if (!Subtarget->hasBWI() && (VT == MVT::v32i16 || VT == MVT::v64i8)) { -

[libcxx] [flang] [clang] [llvm] [libc] [compiler-rt] [lld] Fix ISel crash when lowering BUILD_VECTOR (PR #73186)

2023-11-24 Thread Simon Pilgrim via cfe-commits
@@ -881,6 +881,23 @@ static bool isEndbrImm64(uint64_t Imm) { return false; } +static bool needBWI(MVT VT) { + return (VT == MVT::v32i16 || VT == MVT::v32f16 || VT == MVT::v64i8); +} + +static MVT getNarrowType(MVT VT) { + if (VT == MVT::v32i16) +return MVT::v16i16; +

[llvm] [lld] [compiler-rt] [libcxx] [libc] [flang] [clang] Fix ISel crash when lowering BUILD_VECTOR (PR #73186)

2023-11-24 Thread Simon Pilgrim via cfe-commits
https://github.com/RKSimon edited https://github.com/llvm/llvm-project/pull/73186 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[flang] [compiler-rt] [lld] [llvm] [libc] [clang] [libcxx] Fix ISel crash when lowering BUILD_VECTOR (PR #73186)

2023-11-24 Thread Simon Pilgrim via cfe-commits
https://github.com/RKSimon commented: Just a couple of minors https://github.com/llvm/llvm-project/pull/73186 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add missing LinkageSpec case to getCursorKindForDecl (PR #72401)

2023-11-24 Thread Shivam Gupta via cfe-commits
xgupta wrote: > By the way, I don't have permission to merge, so feel free to do it when you > think it's ready. Thanks for the contribution. https://github.com/llvm/llvm-project/pull/72401 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang] Add missing LinkageSpec case to getCursorKindForDecl (PR #72401)

2023-11-24 Thread Shivam Gupta via cfe-commits
https://github.com/xgupta closed https://github.com/llvm/llvm-project/pull/72401 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 7091ca1 - [clang] Add missing LinkageSpec case to getCursorKindForDecl (#72401)

2023-11-24 Thread via cfe-commits
Author: Sebastian Poeplau Date: 2023-11-24T21:41:17+05:30 New Revision: 7091ca1ae3a87479b6febdf1c3a324d707c633d9 URL: https://github.com/llvm/llvm-project/commit/7091ca1ae3a87479b6febdf1c3a324d707c633d9 DIFF:

[clang] [Clang] Fix `-Wdocumentation` warning (NFC) (PR #73243)

2023-11-24 Thread Egor Zhdan via cfe-commits
https://github.com/egorzhdan closed https://github.com/llvm/llvm-project/pull/73243 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 18a5ca1 - [Clang] Fix `-Wdocumentation` warning (NFC)

2023-11-24 Thread via cfe-commits
Author: Egor Zhdan Date: 2023-11-24T15:41:37Z New Revision: 18a5ca14d16e6e5142fc5527accdfb10c1a22820 URL: https://github.com/llvm/llvm-project/commit/18a5ca14d16e6e5142fc5527accdfb10c1a22820 DIFF: https://github.com/llvm/llvm-project/commit/18a5ca14d16e6e5142fc5527accdfb10c1a22820.diff LOG:

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Balázs Kéri via cfe-commits
https://github.com/balazske edited https://github.com/llvm/llvm-project/pull/73335 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Balázs Kéri via cfe-commits
@@ -774,26 +780,45 @@ void StreamChecker::evalFgetcFputc(const FnDescription *Desc, // `fgetc` returns the read character on success, otherwise returns EOF. // `fputc` returns the written character on success, otherwise returns EOF. + // `fputs` returns a non negative

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Balázs Kéri via cfe-commits
@@ -50,6 +50,7 @@ size_t fread(void *restrict, size_t, size_t, FILE *restrict); size_t fwrite(const void *restrict, size_t, size_t, FILE *restrict); int fgetc(FILE *stream); int fputc(int ch, FILE *stream); +int fputs(const char *str, FILE *stream); balazske

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread Balázs Kéri via cfe-commits
https://github.com/balazske requested changes to this pull request. https://github.com/llvm/llvm-project/pull/73335 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Fix `-Wdocumentation` warning (NFC) (PR #73243)

2023-11-24 Thread via cfe-commits
https://github.com/cor3ntin approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/73243 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [analyzer] Switch to PostStmt callbacks in ArrayBoundV2 (PR #72107)

2023-11-24 Thread via cfe-commits
=?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy Message-ID: In-Reply-To: https://github.com/DonatNagyE edited https://github.com/llvm/llvm-project/pull/72107 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][analyzer] Support `fputs` in the StreamChecker (PR #73335)

2023-11-24 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-static-analyzer-1 @llvm/pr-subscribers-clang Author: Ben Shi (benshi001) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/73335.diff 4 Files Affected: - (modified) clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp (+43-18)

[clang] [analyzer] Switch to PostStmt callbacks in ArrayBoundV2 (PR #72107)

2023-11-24 Thread via cfe-commits
=?utf-8?q?Donát?= Nagy , =?utf-8?q?Donát?= Nagy Message-ID: In-Reply-To: https://github.com/DonatNagyE updated https://github.com/llvm/llvm-project/pull/72107 >From ab102e949994a4462382e4c10c0153d61fb00306 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Don=C3=A1t=20Nagy?= Date: Mon, 13 Nov 2023

  1   2   >