Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[NFC][Clang] Move functions of BranchProtectionInfo out of line #98329

Merged
merged 3 commits into from
Jul 11, 2024

Conversation

DanielKristofKiss
Copy link
Member

Also let's add const to the setFnAttributes.

Also let's add const to the setFnAttributes.
@DanielKristofKiss DanielKristofKiss requested a review from nikic July 10, 2024 14:31
@llvmbot llvmbot added clang Clang issues not falling into any other category clang:frontend Language frontend issues, e.g. anything involving "Sema" labels Jul 10, 2024
@llvmbot
Copy link
Member

llvmbot commented Jul 10, 2024

@llvm/pr-subscribers-clang

Author: Daniel Kiss (DanielKristofKiss)

Changes

Also let's add const to the setFnAttributes.


Full diff: https://github.com/llvm/llvm-project/pull/98329.diff

2 Files Affected:

  • (modified) clang/include/clang/Basic/TargetInfo.h (+2-18)
  • (modified) clang/lib/Basic/TargetInfo.cpp (+20)
diff --git a/clang/include/clang/Basic/TargetInfo.h b/clang/include/clang/Basic/TargetInfo.h
index 1f208b40f92cb..5a6a0cdbd316a 100644
--- a/clang/include/clang/Basic/TargetInfo.h
+++ b/clang/include/clang/Basic/TargetInfo.h
@@ -34,7 +34,6 @@
 #include "llvm/Frontend/OpenMP/OMPGridValues.h"
 #include "llvm/IR/Attributes.h"
 #include "llvm/IR/DerivedTypes.h"
-#include "llvm/IR/Function.h"
 #include "llvm/Support/DataTypes.h"
 #include "llvm/Support/Error.h"
 #include "llvm/Support/VersionTuple.h"
@@ -1450,24 +1449,9 @@ class TargetInfo : public TransferrableTargetInfo,
       GuardedControlStack = LangOpts.GuardedControlStack;
     }
 
-    void setFnAttributes(llvm::Function &F) {
-      llvm::AttrBuilder FuncAttrs(F.getContext());
-      setFnAttributes(FuncAttrs);
-      F.addFnAttrs(FuncAttrs);
-    }
+    void setFnAttributes(llvm::Function &F) const;
 
-    void setFnAttributes(llvm::AttrBuilder &FuncAttrs) {
-      if (SignReturnAddr != LangOptions::SignReturnAddressScopeKind::None) {
-        FuncAttrs.addAttribute("sign-return-address", getSignReturnAddrStr());
-        FuncAttrs.addAttribute("sign-return-address-key", getSignKeyStr());
-      }
-      if (BranchTargetEnforcement)
-        FuncAttrs.addAttribute("branch-target-enforcement");
-      if (BranchProtectionPAuthLR)
-        FuncAttrs.addAttribute("branch-protection-pauth-lr");
-      if (GuardedControlStack)
-        FuncAttrs.addAttribute("guarded-control-stack");
-    }
+    void setFnAttributes(llvm::AttrBuilder &FuncAttrs) const;
   };
 
   /// Determine if the Architecture in this TargetInfo supports branch
diff --git a/clang/lib/Basic/TargetInfo.cpp b/clang/lib/Basic/TargetInfo.cpp
index 29f5cd14e46e1..a99ddd081ae28 100644
--- a/clang/lib/Basic/TargetInfo.cpp
+++ b/clang/lib/Basic/TargetInfo.cpp
@@ -18,6 +18,7 @@
 #include "clang/Basic/LangOptions.h"
 #include "llvm/ADT/APFloat.h"
 #include "llvm/ADT/STLExtras.h"
+#include "llvm/IR/Function.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/TargetParser/TargetParser.h"
 #include <cstdlib>
@@ -1005,3 +1006,22 @@ void TargetInfo::copyAuxTarget(const TargetInfo *Aux) {
   auto *Src = static_cast<const TransferrableTargetInfo*>(Aux);
   *Target = *Src;
 }
+
+void TargetInfo::BranchProtectionInfo::setFnAttributes(llvm::Function &F) const {
+  llvm::AttrBuilder FuncAttrs(F.getContext());
+  setFnAttributes(FuncAttrs);
+  F.addFnAttrs(FuncAttrs);
+}
+
+void  TargetInfo::BranchProtectionInfo::setFnAttributes(llvm::AttrBuilder &FuncAttrs) const {
+  if (SignReturnAddr != LangOptions::SignReturnAddressScopeKind::None) {
+    FuncAttrs.addAttribute("sign-return-address", getSignReturnAddrStr());
+    FuncAttrs.addAttribute("sign-return-address-key", getSignKeyStr());
+  }
+  if (BranchTargetEnforcement)
+    FuncAttrs.addAttribute("branch-target-enforcement");
+  if (BranchProtectionPAuthLR)
+    FuncAttrs.addAttribute("branch-protection-pauth-lr");
+  if (GuardedControlStack)
+    FuncAttrs.addAttribute("guarded-control-stack");
+}

Copy link

github-actions bot commented Jul 10, 2024

✅ With the latest revision this PR passed the C/C++ code formatter.

@@ -34,7 +34,6 @@
#include "llvm/Frontend/OpenMP/OMPGridValues.h"
#include "llvm/IR/Attributes.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also drop the Attributes.h include.

Copy link
Contributor

@nikic nikic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks!

@DanielKristofKiss DanielKristofKiss merged commit 4710e0f into llvm:main Jul 11, 2024
7 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Jul 11, 2024

LLVM Buildbot has detected a new failure on builder flang-aarch64-libcxx running on linaro-flang-aarch64-libcxx while building clang at step 5 "build-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/89/builds/1820

Here is the relevant piece of the build log for the reference:

Step 5 (build-unified-tree) failure: build (failure)
...
100.576 [1770/39/5266] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPExpressions.cpp.o
100.578 [1770/38/5267] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/VTTBuilder.cpp.o
100.689 [1770/37/5268] Building CXX object tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Mips.cpp.o
100.764 [1770/36/5269] Building CXX object tools/clang/lib/ASTMatchers/Dynamic/CMakeFiles/obj.clangDynamicASTMatchers.dir/Diagnostics.cpp.o
101.343 [1736/69/5270] Building CXX object tools/clang/lib/ASTMatchers/Dynamic/CMakeFiles/obj.clangDynamicASTMatchers.dir/Marshallers.cpp.o
101.367 [1736/68/5271] Building CXX object tools/clang/lib/ASTMatchers/Dynamic/CMakeFiles/obj.clangDynamicASTMatchers.dir/Parser.cpp.o
101.559 [1736/67/5272] Building CXX object tools/clang/lib/ASTMatchers/Dynamic/CMakeFiles/obj.clangDynamicASTMatchers.dir/Registry.cpp.o
101.627 [1736/66/5273] Building CXX object tools/clang/lib/ASTMatchers/Dynamic/CMakeFiles/obj.clangDynamicASTMatchers.dir/VariantValue.cpp.o
101.629 [1736/65/5274] Building OpenCLBuiltins.inc...
101.630 [1736/64/5275] Linking CXX shared library lib/libclangBasic.so.19.0git
FAILED: lib/libclangBasic.so.19.0git 
: && /usr/local/bin/c++ -fPIC -stdlib=libc++ -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -fno-common -Woverloaded-virtual -Wno-nested-anon-types -O3 -DNDEBUG  -stdlib=libc++ -Wl,-z,defs -Wl,-z,nodelete   -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-libcxx/build/./lib  -Wl,--gc-sections -shared -Wl,-soname,libclangBasic.so.19.0git -o lib/libclangBasic.so.19.0git tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ASTSourceDescriptor.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Attributes.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Builtins.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CLWarnings.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CharInfo.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/CodeGenOptions.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Cuda.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DarwinSDKInfo.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Diagnostic.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DiagnosticIDs.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/DiagnosticOptions.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ExpressionTraits.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileEntry.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileManager.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/FileSystemStatCache.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/IdentifierTable.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/LangOptions.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/LangStandards.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/MakeSupport.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Module.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ObjCRuntime.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OpenCLOptions.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OpenMPKinds.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/OperatorPrecedence.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ParsedAttrInfo.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/ProfileList.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/NoSanitizeList.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SanitizerSpecialCaseList.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Sanitizers.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Sarif.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SourceLocation.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SourceManager.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/SourceMgrAdapter.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Stack.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetID.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetInfo.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AArch64.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AMDGPU.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/ARC.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/ARM.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/AVR.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/BPF.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/CSKY.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/DirectX.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Hexagon.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Lanai.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Le64.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/LoongArch.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/M68k.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/MSP430.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Mips.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/NVPTX.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/OSTargets.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/PNaCl.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/PPC.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/RISCV.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/SPIR.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/Sparc.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/SystemZ.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/TCE.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/VE.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/WebAssembly.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/X86.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Targets/XCore.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TokenKinds.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TypeTraits.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Version.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/Warnings.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/XRayInstr.cpp.o tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/XRayLists.cpp.o  -Wl,-rpath,"\$ORIGIN/../lib:/home/tcwg-buildbot/worker/flang-aarch64-libcxx/build/lib:"  lib/libLLVMFrontendOpenMP.so.19.0git  lib/libLLVMTargetParser.so.19.0git  lib/libLLVMSupport.so.19.0git  -Wl,-rpath-link,/home/tcwg-buildbot/worker/flang-aarch64-libcxx/build/lib && :
/usr/bin/ld: tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetInfo.cpp.o: in function `clang::TargetInfo::BranchProtectionInfo::setFnAttributes(llvm::Function&) const':
TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm8FunctionE+0x20): undefined reference to `llvm::Function::getContext() const'
/usr/bin/ld: TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm8FunctionE+0x50): undefined reference to `llvm::Function::addFnAttrs(llvm::AttrBuilder const&)'
/usr/bin/ld: tools/clang/lib/Basic/CMakeFiles/obj.clangBasic.dir/TargetInfo.cpp.o: in function `clang::TargetInfo::BranchProtectionInfo::setFnAttributes(llvm::AttrBuilder&) const':
TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm11AttrBuilderE+0x64): undefined reference to `llvm::AttrBuilder::addAttribute(llvm::StringRef, llvm::StringRef)'
/usr/bin/ld: TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm11AttrBuilderE+0xa0): undefined reference to `llvm::AttrBuilder::addAttribute(llvm::StringRef, llvm::StringRef)'
/usr/bin/ld: TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm11AttrBuilderE+0xc4): undefined reference to `llvm::AttrBuilder::addAttribute(llvm::StringRef, llvm::StringRef)'
/usr/bin/ld: TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm11AttrBuilderE+0xe8): undefined reference to `llvm::AttrBuilder::addAttribute(llvm::StringRef, llvm::StringRef)'
/usr/bin/ld: TargetInfo.cpp:(.text._ZNK5clang10TargetInfo20BranchProtectionInfo15setFnAttributesERN4llvm11AttrBuilderE+0x118): undefined reference to `llvm::AttrBuilder::addAttribute(llvm::StringRef, llvm::StringRef)'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
101.644 [1736/63/5276] Building CXX object tools/clang/lib/CodeGen/CMakeFiles/obj.clangCodeGen.dir/CGLoopInfo.cpp.o
102.480 [1736/62/5277] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/FormatString.cpp.o
102.559 [1736/61/5278] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/Availability.cpp.o
102.944 [1736/60/5279] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Preprocessor.cpp.o
102.989 [1736/59/5280] Building CXX object tools/clang/lib/CodeGen/CMakeFiles/obj.clangCodeGen.dir/BackendUtil.cpp.o
103.908 [1736/58/5281] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPDirectives.cpp.o
104.583 [1736/57/5282] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/ScanfFormatString.cpp.o
105.172 [1736/56/5283] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/PrintfFormatString.cpp.o
105.296 [1736/55/5284] Building CXX object tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/PPMacroExpansion.cpp.o
105.932 [1736/54/5285] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/ItaniumCXXABI.cpp.o
106.210 [1736/53/5286] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/MicrosoftCXXABI.cpp.o
106.855 [1736/52/5287] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/Interp/Context.cpp.o
107.564 [1736/51/5288] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/Interp/InterpBuiltin.cpp.o
107.820 [1736/50/5289] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/DeclCXX.cpp.o
108.941 [1736/49/5290] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/DeclBase.cpp.o
108.982 [1736/48/5291] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/OpenMPClause.cpp.o
109.044 [1736/47/5292] Building CXX object tools/clang/lib/CrossTU/CMakeFiles/obj.clangCrossTU.dir/CrossTranslationUnit.cpp.o
109.480 [1736/46/5293] Building CXX object tools/clang/lib/Parse/CMakeFiles/obj.clangParse.dir/ParseObjc.cpp.o
110.016 [1736/45/5294] Building CXX object tools/clang/lib/Parse/CMakeFiles/obj.clangParse.dir/ParseStmt.cpp.o
110.257 [1736/44/5295] Building CXX object tools/clang/lib/Parse/CMakeFiles/obj.clangParse.dir/ParseStmtAsm.cpp.o
110.512 [1736/43/5296] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/RecordLayoutBuilder.cpp.o
111.066 [1736/42/5297] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/Stmt.cpp.o
111.393 [1736/41/5298] Building CXX object tools/clang/lib/Parse/CMakeFiles/obj.clangParse.dir/ParseDeclCXX.cpp.o
111.412 [1736/40/5299] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/RecordLayout.cpp.o
111.772 [1736/39/5300] Building CXX object tools/clang/lib/Parse/CMakeFiles/obj.clangParse.dir/ParsePragma.cpp.o
111.774 [1736/38/5301] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/MicrosoftMangle.cpp.o
111.846 [1736/37/5302] Building CXX object tools/clang/lib/AST/CMakeFiles/obj.clangAST.dir/Decl.cpp.o

@DanielKristofKiss
Copy link
Member Author

in some build config TargetInfo.cpp is built without dependency to LLVM-Core.

@nikic
Copy link
Contributor

nikic commented Jul 11, 2024

in some build config TargetInfo.cpp is built without dependency to LLVM-Core.

Okay, that means that putting this code inside Basic/ is a layering violation. You need to move it into CodeGen/. Probably best to revert the whole change in the meantime.

@DanielKristofKiss
Copy link
Member Author

in some build config TargetInfo.cpp is built without dependency to LLVM-Core.

Okay, that means that putting this code inside Basic/ is a layering violation. You need to move it into CodeGen/. Probably best to revert the whole change in the meantime.

Already reverted, I'm on it.

DanielKristofKiss pushed a commit to DanielKristofKiss/llvm-project that referenced this pull request Jul 11, 2024
Move the to TargetCodeGenInfo.
Refactor of llvm#98329
DanielKristofKiss added a commit that referenced this pull request Jul 12, 2024
To reduce build times move them to TargetCodeGenInfo.

Refactor of #98329
aaryanshukla pushed a commit to aaryanshukla/llvm-project that referenced this pull request Jul 14, 2024
aaryanshukla pushed a commit to aaryanshukla/llvm-project that referenced this pull request Jul 14, 2024
aaryanshukla pushed a commit to aaryanshukla/llvm-project that referenced this pull request Jul 14, 2024
To reduce build times move them to TargetCodeGenInfo.

Refactor of llvm#98329
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang:frontend Language frontend issues, e.g. anything involving "Sema" clang Clang issues not falling into any other category
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants