https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/122516
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -19493,7 +19493,11 @@ void Sema::ActOnFields(Scope *S, SourceLocation
RecLoc, Decl *EnclosingDecl,
CDecl->setIvarRBraceLoc(RBrac);
}
}
- ProcessAPINotes(Record);
+
+ // If this is a class template instantiation, its API Notes attributes were
+ // added to the
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/122516
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
compnerd wrote:
(waiting to see if Aaron can also take a look)
https://github.com/llvm/llvm-project/pull/119403
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/119403
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/120487
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd closed
https://github.com/llvm/llvm-project/pull/119090
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
compnerd wrote:
I'll go ahead and merge the change on your behalf as I suspect that you do not
have commit rights as this is your first PR to the project. Thank you for the
contribution!
https://github.com/llvm/llvm-project/pull/119090
___
cfe-commit
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/119090
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -46,6 +46,9 @@ typedef struct {
/**
* Retrieve the character data associated with the given string.
+ *
+ * The caller shouldn't free the returned string data, and the returned string
+ * data shouldn't be accessed after the \c CXString disposed.
compnerd
@@ -46,6 +46,9 @@ typedef struct {
/**
* Retrieve the character data associated with the given string.
+ *
+ * The caller shouldn't free the returned string data, and the returned string
+ * data shouldn't be accessed after the \c CXString disposed.
compnerd
https://github.com/compnerd edited
https://github.com/llvm/llvm-project/pull/119090
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -46,6 +46,9 @@ typedef struct {
/**
* Retrieve the character data associated with the given string.
+ *
+ * The caller shouldn't free the returned string data, and the returned string
+ * data shouldn't be accessed after the \c CXString disposed.
compnerd
@@ -373,6 +373,13 @@ void ReadFunctionInfo(const uint8_t *&Data, FunctionInfo
&Info) {
endian::readNext(Data);
Info.ResultType = std::string(Data, Data + ResultTypeLen);
Data += ResultTypeLen;
+
+ unsigned SwiftReturnOwnershipLength =
+ endian::readNext(Data);
@@ -373,6 +373,13 @@ void ReadFunctionInfo(const uint8_t *&Data, FunctionInfo
&Info) {
endian::readNext(Data);
Info.ResultType = std::string(Data, Data + ResultTypeLen);
Data += ResultTypeLen;
+
+ unsigned SwiftReturnOwnershipLength =
+ endian::readNext(Data);
compnerd wrote:
> But this before we do that, we need to have some kind of mechanism in place
> so we can actually enumerate the AP However, we already expose everything in
> the API, and just adding the annotations doesn't change that (although I
> think it may slightly reduce the number of s
compnerd wrote:
> Well, we're currently approaching this from the angle of "expose everything
> and then the user can do whatever they want", but perhaps the discussion we
> should be having is "what use cases do we explicitly want to support?" and
> then we write plugins to demonstrate that w
compnerd 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 multipl
compnerd wrote:
> > The default behaviour of `ids` is to assume that anything declared in the
> > header is public and it will ensure that anything added in the headers is
> > annotated properly to say it is exposed, making something private would be
> > an explicit decision that the developer
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/117194
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/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"
compnerd wrote:
We should document the option. Why is it specific to cl
@@ -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
@@ -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
@@ -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"
compnerd wrote:
It is unclear what this new option (`CLANG_IMPORT`) doe
https://github.com/compnerd edited
https://github.com/llvm/llvm-project/pull/115866
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd approved this pull request.
Some minor comments left.
https://github.com/llvm/llvm-project/pull/115866
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1266,11 +1266,11 @@ class CommonTypeTableInfo
class TagTableInfo : public CommonTypeTableInfo {
public:
unsigned getUnversionedInfoSize(const TagInfo &TI) {
-return 2 + (TI.SwiftImportAs ? TI.SwiftImportAs->size() : 0) +
- 2 + (TI.SwiftRetainOp ? TI.SwiftRet
@@ -757,6 +763,15 @@ class TagInfo : public CommonTypeInfo {
SwiftCopyable = Value.value_or(false);
}
+ std::optional isSwiftEscapable() const {
+return SwiftEscapableSpecified ? std::optional(SwiftEscapable)
+ : std::nullopt;
+ }
@@ -589,10 +589,16 @@ class TagTableInfo
uint8_t Copyable =
endian::readNext(Data);
-if (Copyable == kSwiftNonCopyable)
+if (Copyable == kSwiftDoesNotConform)
Info.setSwiftCopyable(std::optional(false));
-else if (Copyable == kSwiftCopyable)
+
@@ -647,6 +647,13 @@ static void ProcessAPINotes(Sema &S, TagDecl *D, const
api_notes::TagInfo &Info,
D->addAttr(SwiftAttrAttr::Create(S.Context, "~Copyable"));
}
+ if (auto Escapable = Info.isSwiftEscapable()) {
+if (*Escapable)
+ D->addAttr(SwiftAttrAttr::
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/115021
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -730,7 +731,9 @@ class YAMLConverter {
}
}
- void convertParams(const ParamsSeq &Params, FunctionInfo &OutInfo) {
+ std::optional convertParams(const ParamsSeq &Params,
+ FunctionInfo &OutInfo) {
compnerd wrot
@@ -396,12 +397,19 @@ class ObjCMethodTableInfo
const uint8_t *&Data) {
ObjCMethodInfo Info;
uint8_t Payload = *Data++;
+bool HasSelf = Payload & 0x01;
+Payload >>= 1;
Info.RequiredInit = Payload & 0x01;
Payload
@@ -730,7 +731,9 @@ class YAMLConverter {
}
}
- void convertParams(const ParamsSeq &Params, FunctionInfo &OutInfo) {
+ std::optional convertParams(const ParamsSeq &Params,
+ FunctionInfo &OutInfo) {
compnerd wrot
@@ -516,7 +524,17 @@ class CXXMethodTableInfo
static CXXMethodInfo readUnversioned(internal_key_type Key,
const uint8_t *&Data) {
CXXMethodInfo Info;
+
+uint8_t Payload = *Data++;
+bool HasThis = Payload & 0x01;
+Payload
@@ -739,10 +742,16 @@ class YAMLConverter {
PI.setLifetimebound(P.Lifetimebound);
PI.setType(std::string(P.Type));
PI.setRetainCountConvention(P.RetainCountConvention);
- if (OutInfo.Params.size() <= P.Position)
+ if (static_cast(OutInfo.Params.size(
@@ -926,11 +935,17 @@ class YAMLConverter {
TheNamespace.Items, SwiftVersion);
}
- void convertFunction(const Function &Function, FunctionInfo &FI) {
+ template
+ void convertFunction(const Function &Function, FuncOrMethodInfo &FI) {
convert
@@ -793,12 +802,22 @@ class CXXMethodTableInfo
return static_cast(key.hashValue());
}
- unsigned getUnversionedInfoSize(const CXXMethodInfo &OMI) {
-return getFunctionInfoSize(OMI);
+ unsigned getUnversionedInfoSize(const CXXMethodInfo &CxxMI) {
+auto size = ge
@@ -730,7 +731,9 @@ class YAMLConverter {
}
}
- void convertParams(const ParamsSeq &Params, FunctionInfo &OutInfo) {
+ std::optional convertParams(const ParamsSeq &Params,
+ FunctionInfo &OutInfo) {
+std::optional thisOrSelf;
compnerd wrote:
Thanks @AaronBallman - @egorzhdan was nice enough to reach out to me earlier
and I am fine with co-maintaining the APINotes.
https://github.com/llvm/llvm-project/pull/114981
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/114830
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -444,6 +454,16 @@ class ParamInfo : public VariableInfo {
NoEscape = Value.value_or(false);
}
+ std::optional isLifetimebound() const {
+if (!LifetimeboundSpecified)
+ return std::nullopt;
+return Lifetimebound;
compnerd wrote:
```sugge
@@ -860,13 +868,12 @@ void Sema::ProcessAPINotes(Decl *D) {
if (!D)
return;
+ auto *DC = D->getDeclContext();
// Globals.
- if (D->getDeclContext()->isFileContext() ||
- D->getDeclContext()->isNamespace() ||
- D->getDeclContext()->isExternCContext() ||
-
compnerd wrote:
> pre-commit actions are expensive, but I think we could afford to do something
> here. It is not hard to set up a DLL build of an ELF DSO build that uses
> these annotations, and it's cheaper than a fully static build.
Having a fast incremental build for DLL-enabled LLVM/clang
@@ -1165,6 +1188,23 @@ void Writer::createMiscChunks() {
llvm::TimeTraceScope timeScope("Misc chunks");
Configuration *config = &ctx.config;
+ auto searchForPgoMagicSection = [this](char sectionName[]) {
+for (auto *obj : ctx.objFileInstances) {
+ for (auto &chun
https://github.com/compnerd commented:
Should the call be prior to the assert?
https://github.com/llvm/llvm-project/pull/112768
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,153 @@
+//===-- amdgpuintrin.h - AMDPGU intrinsic functions
---===//
+//
+// 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: Ap
@@ -0,0 +1,153 @@
+//===-- amdgpuintrin.h - AMDPGU intrinsic functions
---===//
+//
+// 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: Ap
compnerd wrote:
> Looking at Format.h (the only file I'm interested in), there feels to me to
> be things in the ABI that I wouldn't expect to be called externally, I don't
> know enough about what's involved in creating a DLL ABI but I wouldn't want
> some of the clang-format functions to be
https://github.com/compnerd approved this pull request.
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
@@ -31,6 +31,7 @@ set(LLVM_LINK_COMPONENTS
Target
TargetParser
TransformUtils
+ CodeGenTypes
compnerd wrote:
This is duplicated (L6).
https://github.com/llvm/llvm-project/pull/109601
___
cfe-commits mailing l
@@ -31,6 +31,7 @@ set(LLVM_LINK_COMPONENTS
Target
TargetParser
TransformUtils
+ LLVMCodeGenTypes
compnerd wrote:
These are lexicographically sorted, please maintain that invariant.
https://github.com/llvm/llvm-project/pull/109601
__
https://github.com/compnerd edited
https://github.com/llvm/llvm-project/pull/109601
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd edited
https://github.com/llvm/llvm-project/pull/109601
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1,3 +1,7 @@
+if(EXISTS ${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen AND CLANG_BUILT_STANDALONE)
+ add_subdirectory(${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen llvm/lib/CodeGen)
+endif()
compnerd wrote:
https://github.com/llvm/llvm-project/blob/main/llvm/cmake/mod
@@ -1,3 +1,7 @@
+if(EXISTS ${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen AND CLANG_BUILT_STANDALONE)
+ add_subdirectory(${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen llvm/lib/CodeGen)
+endif()
compnerd wrote:
The issue is that the `vt_gen` target is undefined. This is _
compnerd wrote:
> @compnerd @etcwilde WDYT about conditionalizing the new dependency with an
> `if (TARGET vt_gen)` instead of doing the `add_subdirectory()` dance?
Ugh, I misread the change as `include_directories`. The `add_subdirectory` is
definitely odd and I'm not sure if that is a proper
@@ -1,3 +1,7 @@
+if(EXISTS ${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen AND CLANG_BUILT_STANDALONE)
+ add_subdirectory(${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen llvm/lib/CodeGen)
+endif()
compnerd wrote:
No, `LLVM_DIR` is passed to the CMake configure step to locat
@@ -1,3 +1,7 @@
+if(EXISTS ${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen AND CLANG_BUILT_STANDALONE)
compnerd wrote:
I think that I would rather have the cases mirrored here - the path should
always exist in general, it is only the standalone case that is special.
@@ -1,3 +1,7 @@
+if(EXISTS ${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen AND CLANG_BUILT_STANDALONE)
+ add_subdirectory(${LLVM_MAIN_SRC_DIR}/include/llvm/CodeGen llvm/lib/CodeGen)
+endif()
compnerd wrote:
IIRC, even in the standalone case, you need to identify the L
@@ -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
@@ -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
@@ -26,7 +26,7 @@ if(NOT CLANG_BUILT_STANDALONE)
set(tablegen_deps intrinsics_gen LinkerWrapperOpts)
endif()
-add_clang_tool(clang-linker-wrapper
+add_clang_tool(clang-linker-wrapper DISABLE_CLANG_LINK_DYLIB
compnerd wrote:
Similar
https://github.com/llvm/
@@ -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
compnerd wrote:
Why is this not allowed? Can we add a note about this?
@@ -7,6 +7,7 @@
#
//======//
set(LLVM_LINK_COMPONENTS Support)
-add_clang_tool(nvptx-arch NVPTXArch.cpp)
+add_clang_tool(nvptx-arch DISABLE_CLANG_LINK_DYLIB
compnerd wrote:
Likewise
https:/
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/109457
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
compnerd 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.)
The symbol lookup in PE/COFF is two level and symmetr
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/109306
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -165,4 +166,8 @@ const std::list>
&getAttributePluginInstances();
} // namespace clang
+namespace llvm {
+extern template class CLANG_TEMPLATE_ABI llvm::Registry;
compnerd wrote:
```suggestion
extern template class CLANG_TEMPLATE_ABI Registry;
```
This
@@ -189,19 +190,23 @@
#define LLVM_TEMPLATE_ABI __declspec(dllimport)
#define LLVM_EXPORT_TEMPLATE
#endif
+#define LLVM_ABI_EXPORT __declspec(dllexport)
compnerd wrote:
Why is this being added? I'm weary of any macro that is always export only
because the val
@@ -108,6 +108,10 @@ macro(add_clang_library name)
endif()
llvm_add_library(${name} ${LIBTYPE} ${ARG_UNPARSED_ARGUMENTS} ${srcs})
+ if(NOT ARG_SHARED AND NOT ARG_STATIC)
+target_compile_definitions("obj.${name}" PRIVATE CLANG_EXPORTS)
compnerd wrote:
@@ -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)
compnerd wrote:
This will ove
@@ -1699,11 +1699,18 @@ class CGObjCGNUstep2 : public CGObjCGNUstep {
llvm::Value *EmitIvarOffset(CodeGenFunction &CGF,
const ObjCInterfaceDecl *Interface,
const ObjCIvarDecl *Ivar) override {
-const std::string
compnerd wrote:
Please also get a sign off from @aganea
https://github.com/llvm/llvm-project/pull/106369
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -484,8 +519,10 @@ static bool initTargetOptions(DiagnosticsEngine &Diags,
Entry.Group == frontend::IncludeDirGroup::System))
Options.MCOptions.IASSearchPaths.push_back(
Entry.IgnoreSysRoot ? Entry.Path : HSOpts.Sysroot + Entry.Path);
- Options.MCOpt
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/106369
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/101962
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -321,6 +322,41 @@ static bool actionRequiresCodeGen(BackendAction Action) {
Action != Backend_EmitLL;
}
+static std::string flattenClangCommandLine(ArrayRef Args,
+ StringRef MainFilename) {
+ std::string FlatCmdLine;
+ raw_st
@@ -322,6 +323,46 @@ static bool actionRequiresCodeGen(BackendAction Action) {
Action != Backend_EmitLL;
}
+static std::string flattenClangCommandLine(ArrayRef Args,
+ StringRef MainFilename) {
+ if (Args.empty())
+ {
---
@@ -2764,10 +2771,59 @@ void AsmPrinter::emitJumpTableInfo() {
for (const MachineBasicBlock *MBB : JTBBs)
emitJumpTableEntry(MJTI, MBB, JTI);
}
+
+ if (EmitJumpTableSizesSection)
+emitJumpTableSizesSection(MJTI, F);
+
if (!JTInDiffSection)
OutStreamer->
@@ -2764,10 +2771,59 @@ void AsmPrinter::emitJumpTableInfo() {
for (const MachineBasicBlock *MBB : JTBBs)
emitJumpTableEntry(MJTI, MBB, JTI);
}
+
+ if (EmitJumpTableSizesSection)
+emitJumpTableSizesSection(MJTI, F);
+
if (!JTInDiffSection)
OutStreamer->
@@ -0,0 +1,97 @@
+; RUN: llc %s -o - -emit-jump-table-sizes-section -verify-machineinstrs
--relocation-model=pic | FileCheck --check-prefix=CHECK %s
+; RUN: llc %s -o - -verify-machineinstrs --relocation-model=pic | FileCheck
--check-prefix=NOFLAG %s
compnerd wr
@@ -2764,6 +2770,27 @@ void AsmPrinter::emitJumpTableInfo() {
for (const MachineBasicBlock *MBB : JTBBs)
emitJumpTableEntry(MJTI, MBB, JTI);
}
+
+ if (EmitJumpTableSizesSection && TM.getTargetTriple().isOSBinFormatELF() &&
compnerd wrote:
Outside
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/104088
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -793,6 +827,16 @@ class YAMLConverter {
SwiftVersion);
}
+ template
+ void convertVariable(const T &Entity, VariableInfo &VI) {
compnerd wrote:
I think that `computeVariableInfo` seems better - we are "hydrating" the
variable
@@ -1252,6 +1282,81 @@ bool APINotesReader::Implementation::readCXXMethodBlock(
return false;
}
+bool APINotesReader::Implementation::readFieldBlock(
+llvm::BitstreamCursor &Cursor, llvm::SmallVectorImpl &Scratch) {
+ if (Cursor.EnterSubBlock(FIELD_BLOCK_ID))
+retur
@@ -858,6 +867,62 @@ void APINotesWriter::Implementation::writeCXXMethodBlock(
}
}
+namespace {
+/// Used to serialize the on-disk C field table.
+class FieldTableInfo
+: public VersionedTableInfo
{
+public:
+ unsigned getKeyLength(key_type_ref) {
+return sizeof(ui
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/102664
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1230,6 +1231,12 @@ class TagTableInfo : public
CommonTypeTableInfo {
} else {
writer.write(0);
}
+if (auto ConformsTo = TI.SwiftConformsTo) {
+ writer.write(ConformsTo->size() + 1);
+ OS.write(ConformsTo->c_str(), ConformsTo->size());
--
@@ -572,6 +572,13 @@ class TagTableInfo
ReleaseOpLength - 1);
Data += ReleaseOpLength - 1;
}
+unsigned ConformsToLength =
+endian::readNext(Data);
+if (ConformsToLength > 0) {
compnerd wrote:
``
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/102664
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd edited
https://github.com/llvm/llvm-project/pull/102681
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/compnerd approved this pull request.
Might be nice to clean this up in the future but hen Microsoft releases a fix.
https://github.com/llvm/llvm-project/pull/102681
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://list
compnerd wrote:
The `.debug_` prefix is for DEARF content, is this being proposed to the DWARF
standard?
https://github.com/llvm/llvm-project/pull/101962
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/li
https://github.com/compnerd approved this pull request.
https://github.com/llvm/llvm-project/pull/101257
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1982,7 +1982,7 @@ unsigned tools::ParseFunctionAlignment(const ToolChain
&TC,
return 0;
if (A->getOption().matches(options::OPT_falign_functions))
-return 0;
+return 4; // log2(16)
compnerd wrote:
@pogo59 that is documented in the GCC docum
@@ -1982,7 +1982,7 @@ unsigned tools::ParseFunctionAlignment(const ToolChain
&TC,
return 0;
if (A->getOption().matches(options::OPT_falign_functions))
-return 0;
+return 4; // log2(16)
compnerd wrote:
This is not true. Quoting the documentation
@@ -6,7 +6,7 @@
//
//===--===//
-// REQUIRES: target={{powerpc.*-ibm-aix.*}}
+// REQUIRES: target={{.+}}-aix{{.*}}
compnerd wrote:
But then we should be able to hoist these tests out of the
@@ -6,7 +6,7 @@
//
//===--===//
-// REQUIRES: target={{powerpc.*-ibm-aix.*}}
+// REQUIRES: target={{.+}}-aix{{.*}}
compnerd wrote:
Why remove the vendor in the vendor specific directory?
ht
@@ -9,7 +9,7 @@
// Check that the PowerPC vector registers are restored properly during
// unwinding. Option -mabi=vec-extabi is required to compile the test case.
-// REQUIRES: target=powerpc{{(64)?}}-ibm-aix
+// REQUIRES: target={{.+}}-aix{{.*}}
compnerd wro
1 - 100 of 1014 matches
Mail list logo