[clang] Fix a cmake error when using the Xcode generator. (PR #119403)

2024-12-20 Thread Thomas Fransham via cfe-commits
fsfod wrote: I guess I must of broke build for the MSVC MSBuild/vcxproj CMake generator as well, maybe it can use the same kind checks as earlier code like this ``` cmake if(NOT XCODE AND NOT MSVC_IDE) target_compile_definitions("obj.${name}" PUBLIC CLANG_EXPORTS) else() target_compile_defin

[clang] [clang-tools-extra] [clangd] Update clangDaemonTweaks to set symbol visibility macros (PR #112304)

2024-12-16 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/112304 >From d41e927e0f437e09cb320b4594f958cb18e30116 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 15 Oct 2024 04:42:35 +0100 Subject: [PATCH 1/2] [clangd] Update clangDaemonTweaks to set symbol visibility

[clang] [clang-tools-extra] [clangd] Update clangDaemonTweaks to set symbol visibility macros (PR #112304)

2024-12-13 Thread Thomas Fransham via cfe-commits
fsfod wrote: Yes I could rename it and make it the set symbol visibility macros to export instead. https://github.com/llvm/llvm-project/pull/112304 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-11-25 Thread Thomas Fransham via cfe-commits
fsfod wrote: > I can absolutely see the value in the opposite - minimise the ABI surface. > For many projects, there is a split of internal and external headers. The > idea is that this tool is only run on the external headers, so those are > meant to be ABI. There were multiple internals hea

[clang] [clang-tools-extra] [clangd] Update clangDaemonTweaks to set symbol visibility macros (PR #112304)

2024-11-17 Thread Thomas Fransham via cfe-commits
@@ -47,7 +47,7 @@ endmacro() macro(add_clang_library name) cmake_parse_arguments(ARG -"SHARED;STATIC;INSTALL_WITH_TOOLCHAIN" +"SHARED;STATIC;INSTALL_WITH_TOOLCHAIN;CLANG_IMPORT" fsfod wrote: Its not possible to infer if a OBJECT target should be imp

[clang] [clang-tools-extra] [clangd] Update clangDaemonTweaks to set symbol visibility macros (PR #112304)

2024-11-15 Thread Thomas Fransham via cfe-commits
@@ -114,7 +114,7 @@ macro(add_clang_library name) if(TARGET "obj.${name}") target_compile_definitions("obj.${name}" PUBLIC CLANG_BUILD_STATIC) endif() - elseif(NOT ARG_SHARED AND NOT ARG_STATIC) + elseif(NOT ARG_SHARED AND NOT ARG_STATIC AND NOT ARG_CLANG_IMPORT

[clang] [Clang][TableGen] Add explicit symbol visibility macros to code generated (PR #109362)

2024-11-02 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109362 >From f4e51ecd076a73d1ebc7a439001d0ed22071b019 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Mon, 8 Jul 2024 01:48:46 +0100 Subject: [PATCH 1/2] [Clang][TableGen] Add explicit symbol visibility macros to c

[clang] [clang-tools-extra] [flang] [llvm] Reland 'Update llvm::Registry to work for LLVM shared library builds on windows' (#109024) (PR #112640)

2024-10-24 Thread Thomas Fransham via cfe-commits
fsfod wrote: The fix for the gn build system would be to unconditionally define CLANG_BUILD_STATIC for the windows platform for now. https://github.com/llvm/llvm-project/pull/112640 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists

[clang] [clang-tools-extra] [flang] [llvm] Reland 'Update llvm::Registry to work for LLVM shared library builds on windows' (#109024) (PR #112640)

2024-10-24 Thread Thomas Fransham via cfe-commits
fsfod wrote: Its strange that visibility macros are enabled for windows but its not a shared library build, idk if the gn build script need to be manually updated to define the macros correctly to turn off visibility macros by default. https://github.com/llvm/llvm-project/pull/112640 _

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-10-24 Thread Thomas Fransham via cfe-commits
fsfod wrote: > I'd like some answer about how we plan to ensure the macros remain correct. > Short-term, "someone periodically runs the tool manually" might be good > enough if we don't expect much churn, I guess. Missing macros on some classes or functions shouldn't break any existing config

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108051 >From 7761ab1ad8eee08fa86aba04e89f7aab5064cb4f Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Sat, 7 Sep 2024 15:53:09 +0100 Subject: [PATCH 1/8] [llvm] Support llvm::Any across shared libraries on windows

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108051 >From 7761ab1ad8eee08fa86aba04e89f7aab5064cb4f Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Sat, 7 Sep 2024 15:53:09 +0100 Subject: [PATCH 1/7] [llvm] Support llvm::Any across shared libraries on windows

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108051 >From 7761ab1ad8eee08fa86aba04e89f7aab5064cb4f Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Sat, 7 Sep 2024 15:53:09 +0100 Subject: [PATCH 1/6] [llvm] Support llvm::Any across shared libraries on windows

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-23 Thread Thomas Fransham via cfe-commits
fsfod wrote: idk if this was kinda the explanation you were after or not https://discourse.llvm.org/t/supporting-llvm-build-llvm-dylib-on-windows/58891 https://github.com/llvm/llvm-project/pull/108051 ___ cfe-commits mailing list cfe-commits@lists.llv

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-22 Thread Thomas Fransham via cfe-commits
fsfod wrote: > What are the implications/requirements for users of DataflowAnalysis? Every > instance specifices it's own lattice, which is converted to/from llvm::Any. > Will every lattice definition require these new declarations? If you think they will be used from external from the llvm li

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-22 Thread Thomas Fransham via cfe-commits
fsfod wrote: > > @ymand, is your concern resolved? > > Sorry, it isn't -- a) we still need comments with at least minimal > explanation and b) I'm not sure why the definition is now in > TypeErasedDataflowAnalysis.cpp -- is this because we lack NoopAnalysis.cpp? > If so, why is TypeErasedData

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108051 >From e39aee57ce8a98723f40f67ae33808bc6213c61d Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Sat, 7 Sep 2024 15:53:09 +0100 Subject: [PATCH 1/5] [llvm] Support llvm::Any across shared libraries on windows

[clang] [clang-tools-extra] [flang] [llvm] Reland 'Update llvm::Registry to work for LLVM shared library builds on windows' (#109024) (PR #112640)

2024-10-16 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/112640 Fix missing extern templates for llvm::Registry use in other projects of llvm Windows doesn't implicitly import and merge exported symbols across shared libraries like Linux does so we need to explicitly export/i

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-10-16 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod ready_for_review https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-16 Thread Thomas Fransham via cfe-commits
fsfod wrote: It looks like that build bot has there own custom warning a errors set, but if i put the template static variable definitions back in the header Linux will have linker errors. https://github.com/llvm/llvm-project/pull/109024 ___ cfe-comm

[clang] [clang-tools-extra] [clangd] Update clangDaemonTweaks to set symbol visibility macros (PR #112304)

2024-10-14 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/112304 Update clangDaemonTweaks cmake target to set explicit symbol visibility macros to correct mode for windows. This will fix linker duplicate symbols errors from clangDaemonTweaks exporting clang symbols instead of

[clang] [llvm] [llvm] Support llvm::Any across shared libraries on windows (PR #108051)

2024-10-14 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108051 >From e39aee57ce8a98723f40f67ae33808bc6213c61d Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Sat, 7 Sep 2024 15:53:09 +0100 Subject: [PATCH 1/4] [llvm] Support llvm::Any across shared libraries on windows

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-14 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From beef0d9f53f05c31041677101577929281e908b1 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/8] Update llvm::Registry to work for LLVM shared library build

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-11 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From fff6064a63ddf85857ea5036333866317a156ffc Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/9] [Clang] Add explicit visibility symbol macros and update CM

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-11 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,67 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-11 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,67 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-09 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,67 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-09 Thread Thomas Fransham via cfe-commits
fsfod wrote: > These changes LGTM but precommit CI was unable to run, so it would be nice if > that could be re-run to ensure it comes back green before landing. It won't be able to pass until https://github.com/llvm/llvm-project/pull/108276 is merged. https://github.com/llvm/llvm-project/pul

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-09 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,67 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-09 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From fff6064a63ddf85857ea5036333866317a156ffc Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/8] [Clang] Add explicit visibility symbol macros and update CM

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-10-08 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From fff6064a63ddf85857ea5036333866317a156ffc Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/7] [Clang] Add explicit visibility symbol macros and update CM

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-03 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From fcb6837e5c6ff48bf261bae9d3cedda55da89a7e Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/7] Update llvm::Registry to work for LLVM shared library build

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-03 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From fcb6837e5c6ff48bf261bae9d3cedda55da89a7e Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/6] Update llvm::Registry to work for LLVM shared library build

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-10-02 Thread Thomas Fransham via cfe-commits
fsfod wrote: Processing just header is also much faster than a full build and I think it would only have to run on changed headers and source files for a PR. https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@li

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-10-02 Thread Thomas Fransham via cfe-commits
fsfod wrote: @john-brawn-arm This may be hard to remember, but this a path you've tread before could the LLVM_INSTANTIATE_REGISTRY just be changed to a fulll class explicit template instantiation? https://github.com/llvm/llvm-project/pull/109024 ___

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-10-02 Thread Thomas Fransham via cfe-commits
fsfod wrote: If your stuck with having to include a class or function it in a public header there will be a macro you can add to it so the Clang tool skips adding visibility attributes added to it. At the file or folder level they can be excluded by adding them to the export config file used b

[clang] [Clang] Update Interpreter tests to use clang_target_link_libraries (PR #110154)

2024-09-28 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/110154 >From e58b244f90c0d9863a41721b7c981d5d853b3d38 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Thu, 26 Sep 2024 18:59:33 +0100 Subject: [PATCH] [Clang] Update Interpreter tests to use clang_target_link_libra

[clang] [Clang] Update Interpreter tests to use clang_target_link_libraries (PR #110154)

2024-09-27 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/110154 >From 064bc85cea9bab0295c92aac3c73df8054b0a036 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Thu, 26 Sep 2024 18:59:33 +0100 Subject: [PATCH] [Clang] Update Interpreter tests to use clang_target_link_libra

[clang] [Clang][ASTMatchers] Add visibility macros to variables declared by macros (PR #110206)

2024-09-26 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/110206 This will fix missing symbols for ASTMatchersTests on windows when building with CLANG_LINK_CLANG and explicit visibility macros are used. This PR depends on macros that will be be added in #108276 This is part o

[clang] [Clang] Update Interpreter tests to use clang_target_link_libraries (PR #110154)

2024-09-26 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/110154 This will fix duplicate and missing linker symbol errors when using CLANG_LINK_CLANG_DYLIB on windows and explicit visibility macros are used. This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and plugins o

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-26 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod ready_for_review https://github.com/llvm/llvm-project/pull/108276 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-25 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From c842394a368fa51ddad78f9c0a7efe2026425b52 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/6] [Clang] Add explicit visibility symbol macros and update CM

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-24 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,69 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-24 Thread Thomas Fransham via cfe-commits
@@ -8,6 +8,7 @@ set(LLVM_LINK_COMPONENTS Support) -add_clang_tool(amdgpu-arch AMDGPUArch.cpp AMDGPUArchByHSA.cpp AMDGPUArchByHIP.cpp) +add_clang_tool(amdgpu-arch DISABLE_CLANG_LINK_DYLIB fsfod wrote: There using target_link_libraries instead of clang_target

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-09-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod converted_to_draft https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-09-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-09-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-09-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-23 Thread Thomas Fransham via cfe-commits
@@ -0,0 +1,69 @@ +//===-- clang/Support/Compiler.h - Compiler abstraction support -*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] Clang tooling generated visibility macros for Clang (PR #109702)

2024-09-23 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-20 Thread Thomas Fransham via cfe-commits
fsfod wrote: @AaronBallman I've added some missing extern template entries for Clang. clang-tools-extra also needs some idk if you ok adding them to this PR as well. https://github.com/llvm/llvm-project/pull/109024 ___ cfe-commits mailing list cfe-com

[clang] [Clang] Include the clang-shlib CMake project when building for MSVC (PR #109457)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/109457 Enable building clang-cpp shared library for windows when building with explicit visibility macros enabled and LLVM is built as a shared library(LLVM_BUILD_LLVM_DYLIB_VIS). This is part of the effort to support f

[clang] [Clang][TableGen] Add explicit symbol visibility macros to code generated (PR #109362)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109362 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-20 Thread Thomas Fransham via cfe-commits
@@ -189,19 +190,23 @@ #define LLVM_TEMPLATE_ABI __declspec(dllimport) #define LLVM_EXPORT_TEMPLATE #endif +#define LLVM_ABI_EXPORT __declspec(dllexport) fsfod wrote: I added a comment to try and explains its use and behaviour. https://github.com/llvm/llvm-pro

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From 35af05f255db5aef2841212ff35f04eb5e967d93 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/4] [Clang] Add explicit visibility symbol macros and update CM

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From fcb6837e5c6ff48bf261bae9d3cedda55da89a7e Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/5] Update llvm::Registry to work for LLVM shared library build

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From fcb6837e5c6ff48bf261bae9d3cedda55da89a7e Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/4] Update llvm::Registry to work for LLVM shared library build

[clang] [Clang][TableGen] Add explicit symbol visibility macros to code generated (PR #109362)

2024-09-20 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod edited https://github.com/llvm/llvm-project/pull/109362 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-20 Thread Thomas Fransham via cfe-commits
fsfod wrote: > One thing I don't understand about this PR is why we need Compiler.h in Clang > -- wouldn't the LLVM definitions in their Compiler.h work for Clang as well? > (This would probably be worth explaining in the patch summary.) We could if we didn't need the visibility macros in diff

[clang] [Clang][TableGen] Add explicit symbol visibility macros to code generated (PR #109362)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109362 >From 363e96ba9ed442698c134f7f716a667e65ba3dbb Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Mon, 8 Jul 2024 01:48:46 +0100 Subject: [PATCH 1/2] [Clang][TableGen] Add explicit symbol visibility macros to c

[clang] [Clang][TableGen] Add explicit symbol visibility macros to code generated (PR #109362)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/109362 Update ClangAttrEmitter TableGen to add explicit symbol visibility macros to class declarations it creates. Both AnnotateFunctions and Attribute example plugins require clang::AnnotateAttr TableGen created functi

[clang-tools-extra] [clang-tools-extra] Fix add_clang_library usage (PR #109321)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109321 >From 41cfaf1dff9b47c3bb6755290aa23bedb80c9ef2 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Thu, 19 Sep 2024 16:53:20 +0100 Subject: [PATCH] [clang-tools-extra] Fix add_clang_library usage If a add_clang_

[clang-tools-extra] [clang-tools-extra] Fix add_clang_library usage (PR #109321)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/109321 If a add_clang_library call doesn't specify building as static or shared library they are implicitly added to the list static libraries that is linked in to clang-cpp shared library here. https://github.com/llvm/

[clang] [Clang] Change Attribute plugin to link clang-cpp like other examples (PR #109319)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/109319 Change the Attribute example plugin to use clang_target_link_libraries instead of target_link_libraries so libclang-cpp is linked when the CLANG_LINK_CLANG_DYLIB CMake option is used. This change will allow buil

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-19 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/109024 >From fcb6837e5c6ff48bf261bae9d3cedda55da89a7e Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Wed, 28 Aug 2024 16:08:52 +0100 Subject: [PATCH 1/3] Update llvm::Registry to work for LLVM shared library build

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-18 Thread Thomas Fransham via cfe-commits
@@ -189,19 +190,23 @@ #define LLVM_TEMPLATE_ABI __declspec(dllimport) #define LLVM_EXPORT_TEMPLATE #endif +#define LLVM_ABI_EXPORT __declspec(dllexport) fsfod wrote: Its macro I mentioned earlier initial explanation about being used in Clang and LLVM, it shou

[clang] [llvm] Update llvm::Registry to work for LLVM shared library builds on windows (PR #109024)

2024-09-17 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/109024 This is part of the effort to support for enabling plugins on windows by adding better support for building llvm and clang as a DLL. Since windows doesn't implicitly import and merge exported symbols across shar

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-13 Thread Thomas Fransham via cfe-commits
@@ -166,7 +166,7 @@ if(ENABLE_SHARED) set_target_properties(libclang PROPERTIES VERSION ${LIBCLANG_LIBRARY_VERSION} - DEFINE_SYMBOL _CINDEX_LIB_) + DEFINE_SYMBOL _CINDEX_LIB_ DEFINE_SYMBOL CLANG_EXPORTS) fsfod wrote: I've fixed this

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-13 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod updated https://github.com/llvm/llvm-project/pull/108276 >From 35af05f255db5aef2841212ff35f04eb5e967d93 Mon Sep 17 00:00:00 2001 From: Thomas Fransham Date: Tue, 10 Sep 2024 02:22:18 +0100 Subject: [PATCH 1/3] [Clang] Add explicit visibility symbol macros and update CM

[clang] [Clang] Add explicit visibility symbol macros (PR #108276)

2024-09-11 Thread Thomas Fransham via cfe-commits
https://github.com/fsfod created https://github.com/llvm/llvm-project/pull/108276 This is part of the effort to support for enabling plugins on windows by adding better support for building llvm and clang as a DLL. These macros are similar to the ones i added in #96630, but are for clang. Add