hubert-reinterpretcast wrote:
> We could add a builtin matching the GCC `__builtin_tgmath` builtin and remove
> our header for at least those targets, though.
Clang would either need to change its `__GNUC__` value or the glibc header
would need to add a `__has_builtin` query.
Oddly enough, `__
hubert-reinterpretcast wrote:
Does it make sense to keep the tests for all platforms then? If we decide to
restrict the testing to the platforms expected to use the Clang-provided
header, then I think it should at least be staged so that there is some CI
cycle where the tests are run regardles
hubert-reinterpretcast wrote:
> I wonder if we can put it into an AIX-only (plus whatever other targets still
> need it) include directory, though, so we only find and use it on the targets
> where it's necessary?
That, or, generally `#include_next` except for certain platforms (like AIX)?
ht
hubert-reinterpretcast wrote:
> Thank you for pointing that out! So IBM still needs Clang to vend this for
> now, I take it? Is IBM planning to update their tgmath.h so that it works
> with the Clang-based XL compiler (so we can eventually remove Clang's)?
The road to being able to retain the
hubert-reinterpretcast wrote:
> Today, that's no longer the case.
IBM's AIX ships a `tgmath.h` that only works with the IBM non-Clang-based XL
compiler.
https://github.com/llvm/llvm-project/pull/135236
___
cfe-commits mailing list
cfe-commits@lists.l
@@ -4456,6 +4456,12 @@ void Parser::ParseDeclarationSpecifiers(
isInvalid = DS.setFunctionSpecNoreturn(Loc, PrevSpec, DiagID);
break;
+case tok::kw__Export:
+ // If we find kw__Export, it is being applied to a var or function
+ // This will be handled
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/134430
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1,6 +1,7 @@
// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -target-feature +altivec
-ffreestanding -emit-llvm -o - %s | FileCheck %s
// RUN: %clang_cc1 -triple powerpc64-unknown-unknown -target-feature +altivec
-ffreestanding -emit-llvm -flax-vector-conversions=none
https://github.com/hubert-reinterpretcast approved this pull request.
LGTM with a suggestion.
https://github.com/llvm/llvm-project/pull/134430
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-c
@@ -127,9 +127,19 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
}
// Force static linking when "-static" is present.
- if (Args.hasArg(options::OPT_static))
+ if (Args.hasArg(options::OPT_static)) {
CmdArgs.push_back("-bnso");
+if (D.
@@ -127,9 +127,19 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
}
// Force static linking when "-static" is present.
- if (Args.hasArg(options::OPT_static))
+ if (Args.hasArg(options::OPT_static)) {
CmdArgs.push_back("-bnso");
+if (D.
@@ -127,9 +127,19 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
}
// Force static linking when "-static" is present.
- if (Args.hasArg(options::OPT_static))
+ if (Args.hasArg(options::OPT_static)) {
CmdArgs.push_back("-bnso");
+if (D.
@@ -0,0 +1,5 @@
+// REQUIRES: systemz-registered-target
hubert-reinterpretcast wrote:
Should there be diagnostics (and corresponding testing) for ignored/meaningless
uses of `_Export`?
e.g.,
```cpp
typedef int _Export ty;
ty x;
int f(int _Export x);
static int
https://github.com/hubert-reinterpretcast closed
https://github.com/llvm/llvm-project/pull/130865
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast closed
https://github.com/llvm/llvm-project/pull/130864
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast updated
https://github.com/llvm/llvm-project/pull/130865
>From 45827d5b7e0f98f52280191d79d72a5698adb312 Mon Sep 17 00:00:00 2001
From: Hubert Tong
Date: Sun, 9 Mar 2025 21:44:53 -0400
Subject: [PATCH] [Clang driver] Diagnose -maix-shared-lib-tls-model-o
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/130865
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -132,6 +132,12 @@ Attribute Changes in Clang
This forces the global to be considered small or large in regards to the
x86-64 code model, regardless of the code model specified for the
compilation.
+- Introduced a new statement attribute ``[[clang::atomic]]`` that enabl
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
@@ -5442,6 +5442,155 @@ third argument, can only occur at file scope.
a = b[i] * c[i] + e;
}
+Extensions for controlling atomic code generation
+=
+
+The ``[[clang::atomic]]`` statement attribute enables users to control ho
https://github.com/hubert-reinterpretcast commented:
@w2yehia, I suggest adding an update to the Release Notes sooner rather than
later:
https://github.com/llvm/llvm-project/blob/main/clang/docs/ReleaseNotes.rst
https://github.com/llvm/llvm-project/pull/124353
_
@@ -1120,3 +1120,18 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// This test verifies that the linker doesn
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -338,6 +338,13 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
CmdArgs.push_back("-lpthread");
}
const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
+
+// Required for 64-bit atomic operations used in sanitizer runtimes
+//
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -338,6 +338,13 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
CmdArgs.push_back("-lpthread");
}
const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
+
+// Required for 64-bit atomic operations used in sanitizer runtimes
+//
@@ -338,6 +338,13 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
CmdArgs.push_back("-lpthread");
}
const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
+
+// Required for 64-bit atomic operations used in sanitizer runtimes
+//
@@ -338,6 +338,13 @@ void aix::Linker::ConstructJob(Compilation &C, const
JobAction &JA,
CmdArgs.push_back("-lpthread");
}
const char *Exec = Args.MakeArgString(ToolChain.GetLinkerPath());
+
+// Required for 64-bit atomic operations used in sanitizer runtimes
+//
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast requested changes to this pull
request.
@honeygoyal, I do not believe that the prerequisite changes from IBM's
downstream are present to support the Clang driver test being added in this PR.
https://github.com/llvm/llvm-project/pull/125388
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
https://github.com/hubert-reinterpretcast requested changes to this pull
request.
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
@@ -1120,3 +1120,19 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %clang -target powerpc-ibm-aix -m32
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/125388
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1121,20 +1121,24 @@
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// This check is only applicable to AIX targets.
+// AIX-specific link behavior requires `-latomi
@@ -1121,20 +1121,24 @@
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// This check is only applicable to AIX targets.
+// AIX-specific link behavior requires `-latomi
@@ -1120,3 +1120,21 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %if target={{.*aix.*}} %{ \
+// RUN
@@ -1120,3 +1120,21 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %if target={{.*aix.*}} %{ \
+// RUN
@@ -1120,3 +1120,21 @@
// RUN:-c \
// RUN: | FileCheck --check-prefixes=CHECK-K-UNUSED %s
// CHECK-K-UNUSED: clang: warning: -K: 'linker' input unused
[-Wunused-command-line-argument]
+
+// Check No Sanitizer on 32-bit AIX
+// RUN: %if target={{.*aix.*}} %{ \
+// RUN
hubert-reinterpretcast wrote:
> Can we have this behavior guarded by a compiler option?
That depends on the rationale:
1. Allow opt in to the resolution of CWG2369 because it is wanted (despite
potentially-temporary fallout); or
2. Require opt in to the resolution of CWG2369 because "it causes
https://github.com/hubert-reinterpretcast created
https://github.com/llvm/llvm-project/pull/122055
Following https://github.com/llvm/llvm-project/pull/120380,
`err_pack_expansion_length_conflict` has one close paren too many.
Remove the extra parenthesis.
>From ecff595a1e753a1c897a0f48e306bfe3
Alejandro =?utf-8?q?Álvarez_Ayllón?Message-ID:
In-Reply-To:
hubert-reinterpretcast wrote:
> LLVM patch releases cannot break API or ABI compatibility
Thanks @nikic for the explanation. I thought you meant ABI compatibility in the
"user program" sense.
https://github.com/llvm/llvm-project/pul
Alejandro =?utf-8?q?Álvarez_Ayllón?Message-ID:
In-Reply-To:
hubert-reinterpretcast wrote:
> This is an ABI-breaking fix, so it cannot be backported in this form.
@nikic, can you explain this statement? Is this something that can be
documented in the release notes:
https://github.com/llvm/llv
https://github.com/hubert-reinterpretcast commented:
There doesn't seem to be changes to handle the text section cases?
https://github.com/llvm/llvm-project/pull/112714
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/112714
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2378,13 +2394,28 @@ MCSection
*TargetLoweringObjectFileXCOFF::getExplicitSectionGlobal(
StringRef SectionName = GO->getSection();
hubert-reinterpretcast wrote:
See `report_fatal_error` above.
I think the new code should be moved up so that `SectionName` i
hubert-reinterpretcast wrote:
> Can we find a way to re-use the code between this and the actual lookup code?
> Feels like we could have some sort of predicate like
> `doesLookupResultSuppressADL(NamedDecl*)`. Or are we forced to use slightly
> different predicates for some compatibility reaso
hubert-reinterpretcast wrote:
> Is it worth adding `ClangABICompat` support for this? (Do we think this will
> affect any real code, or is this more just formal correctness?)
The change was motivated by formal correctness (and the work led to the
discovery of CWG 2946). I have some doubts that
hubert-reinterpretcast wrote:
A problem with the current patch is that it does not evaluate, even in constant
expression contexts, cases that require rounding:
```cpp
extern constexpr float onepluszeroeps = __builtin_fmaf(__FLT_EPSILON__, .0f,
1.f);
extern constexpr float oneplushalfeps = __bui
https://github.com/hubert-reinterpretcast commented:
Needs tests for rounding cases and observance of rounding modes.
https://github.com/llvm/llvm-project/pull/113020
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bi
https://github.com/hubert-reinterpretcast approved this pull request.
LGTM; thanks!
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
https://github.com/hubert-reinterpretcast approved this pull request.
LGTM! Thanks!
https://github.com/llvm/llvm-project/pull/112436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,138 @@
+; Tests if the __llvm_gcov_ctr section contains a .ref pseudo-op
+; referring to the __llvm_covinit section.
+; RUN: llc < %s | FileCheck --check-prefixes=CHECK,CHECK-RW %s
+; RUN: llc -mxcoff-roptr < %s | FileCheck --check-prefixes=CHECK,CHECK-RO %s
+
+target d
https://github.com/hubert-reinterpretcast approved this pull request.
LGTM with minor comment; thanks!
https://github.com/llvm/llvm-project/pull/108570
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listi
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/108570
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
hubert-reinterpretcast wrote:
Handling for local variables (not initialized with `{}`). The performance
impact of guaranteeing the extension is artificially reduced because the
baseline code generation uses `memset` over the entire union when the size is
large, but initializing the bytes after
hubert-reinterpretcast wrote:
@AaronBallman, considering the concern of potential performance regressions
("unnecessary" initialization of automatic-storage duration objects), should it
be the case that there is no option control?
It was also the case that the prior Clang behaviour (with
`-ft
@@ -0,0 +1,129 @@
+; Tests if the __llvm_gcov_ctr section contains a .ref pseudo-op
+; referring to the __llvm_covinit section.
+; RUN: llc < %s | FileCheck --check-prefixes=CHECK,CHECK-RW %s
+; RUN: llc -mxcoff-roptr < %s | FileCheck --check-prefixes=CHECK,CHECK-RO %s
+
+target d
@@ -8,14 +8,19 @@ target triple = "powerpc-ibm-aix"
; CHECK-RW: .csect __llvm_covinit[RW],3
; CHECK-RO: .csect __llvm_covinit[RO],3
-; CHECK: .vbyte 4, __llvm_gcov_writeout[DS]
-; CHECK-NEXT:.vbyte 4, __llvm_gcov_reset[DS]
-; CHECK: __llvm_gcov_ctr.1:
+; CHECK-NE
@@ -0,0 +1,129 @@
+; Tests if the __llvm_gcov_ctr section contains a .ref pseudo-op
+; referring to the __llvm_covinit section.
+; RUN: llc < %s | FileCheck --check-prefixes=CHECK,CHECK-RW %s
+; RUN: llc -mxcoff-roptr < %s | FileCheck --check-prefixes=CHECK,CHECK-RO %s
+
+target d
hubert-reinterpretcast wrote:
@xingxue-ibm, I edited the PR description text. Please check my edits.
https://github.com/llvm/llvm-project/pull/112436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinf
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/112436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/112436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast commented:
I think a small test case could be added with a `int main(void) {}` C program
linked with -`brtl` and `LDR_PRELOAD`/`LDR_PRELOAD64` set to
`libunwind.a(libunwind.so.1)`.
https://github.com/llvm/llvm-project/pull/112436
__
@@ -2126,42 +2125,34 @@ bool UnwindCursor::getInfoFromTBTable(pint_t pc,
R ®isters) {
// function __xlcxx_personality_v0(), which is the personality for the
state
// table and is exported from libc++abi, is directly assigned as the
// handler here. When a legacy X
@@ -2126,42 +2125,34 @@ bool UnwindCursor::getInfoFromTBTable(pint_t pc,
R ®isters) {
// function __xlcxx_personality_v0(), which is the personality for the
state
// table and is exported from libc++abi, is directly assigned as the
// handler here. When a legacy X
@@ -2126,42 +2125,34 @@ bool UnwindCursor::getInfoFromTBTable(pint_t pc,
R ®isters) {
// function __xlcxx_personality_v0(), which is the personality for the
state
// table and is exported from libc++abi, is directly assigned as the
// handler here. When a legacy X
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/112436
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/108570
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -914,6 +918,9 @@ bool GCOVProfiler::emitProfileNotes(
GlobalVariable *Counters = new GlobalVariable(
*M, CounterTy, false, GlobalValue::InternalLinkage,
Constant::getNullValue(CounterTy), "__llvm_gcov_ctr");
+const llvm::Triple &Triple
@@ -0,0 +1,129 @@
+; Tests if the __llvm_gcov_ctr section contains a .ref pseudo-op
+; referring to the __llvm_covinit section.
+; RUN: llc < %s | FileCheck --check-prefixes=CHECK,CHECK-RW %s
+; RUN: llc -mxcoff-roptr < %s | FileCheck --check-prefixes=CHECK,CHECK-RO %s
+
+target d
@@ -0,0 +1,129 @@
+; Tests if the __llvm_gcov_ctr section contains a .ref pseudo-op
+; referring to the __llvm_covinit section.
+; RUN: llc < %s | FileCheck --check-prefixes=CHECK,CHECK-RW %s
+; RUN: llc -mxcoff-roptr < %s | FileCheck --check-prefixes=CHECK,CHECK-RO %s
+
+target d
https://github.com/hubert-reinterpretcast edited
https://github.com/llvm/llvm-project/pull/108570
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -1,8 +1,14 @@
;; Ensure __llvm_gcov_(writeout|reset|init) have !kcfi_type with KCFI.
; RUN: mkdir -p %t && cd %t
-; RUN: opt < %s -S -passes=insert-gcov-profiling | FileCheck %s
+; RUN: opt < %s -S -passes=insert-gcov-profiling \
+; RUN: -mtriple=x86_64-unknown-linux-gnu | F
@@ -914,6 +918,7 @@ bool GCOVProfiler::emitProfileNotes(
GlobalVariable *Counters = new GlobalVariable(
*M, CounterTy, false, GlobalValue::InternalLinkage,
Constant::getNullValue(CounterTy), "__llvm_gcov_ctr");
+Counters->setSection("__ll
@@ -2962,13 +2964,34 @@ void PPCAIXAsmPrinter::emitPGORefs(Module &M) {
}
}
+void PPCAIXAsmPrinter::emitGCOVRefs() {
+ if (!OutContext.hasXCOFFSection(
+ "__llvm_gcov_ctr_section",
+ XCOFF::CsectProperties(XCOFF::XMC_RW, XCOFF::XTY_SD)))
+return;
+
+
@@ -1,7 +1,13 @@
; RUN: mkdir -p %t && cd %t
-; RUN: opt < %s -S -passes=insert-gcov-profiling | FileCheck %s
+; RUN: opt < %s -S -passes=insert-gcov-profiling \
+; RUN: -mtriple=x86_64-unknown-linux-gnu | FileCheck \
+; RUN: --check-prefixes=CHECK,CHECK-ELF %s
@@ -781,6 +798,9 @@ serializeValueProfDataFrom(ValueProfRecordClosure *Closure,
#define INSTR_PROF_COVNAME_COFF ".lcovn"
#define INSTR_PROF_ORDERFILE_COFF ".lorderfile$M"
+// TODO: Placeholder for Windows. We need to revise when we upstream this.
hubert-reinte
@@ -2962,13 +2964,34 @@ void PPCAIXAsmPrinter::emitPGORefs(Module &M) {
}
}
+void PPCAIXAsmPrinter::emitGCOVRefs() {
+ if (!OutContext.hasXCOFFSection(
+ "__llvm_gcov_ctr_section",
+ XCOFF::CsectProperties(XCOFF::XMC_RW, XCOFF::XTY_SD)))
+return;
+
+
@@ -1,9 +1,15 @@
;; Ensure __llvm_gcov_(writeout|reset|init) have the correct !kcfi_type
;; with integer normalization.
; RUN: mkdir -p %t && cd %t
-; RUN: opt < %s -S -passes=insert-gcov-profiling | FileCheck %s
+; RUN: opt < %s -S -passes=insert-gcov-profiling \
+; RUN: -mtr
@@ -781,6 +798,9 @@ serializeValueProfDataFrom(ValueProfRecordClosure *Closure,
#define INSTR_PROF_COVNAME_COFF ".lcovn"
#define INSTR_PROF_ORDERFILE_COFF ".lorderfile$M"
+// TODO: Placeholder for Windows. We need to revise when we upstream this.
hubert-reinte
@@ -3,12 +3,18 @@
/// 4.7 enables cfg_checksum.
/// 4.8 (default, compatible with gcov 7) emits the exit block the second.
// RUN: rm -rf %t && mkdir %t && cd %t
-// RUN: %clang_cc1 -emit-llvm -disable-red-zone -coverage-data-file=/dev/null
-coverage-version='304*' %s -o - | \
@@ -0,0 +1,123 @@
+; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux -mcpu=pwr7
\
hubert-reinterpretcast wrote:
I am not sure the machine-codegen-from-IR test is necessary. We only changed
the Clang front-end IR codegen. It stands to reason th
1 - 100 of 411 matches
Mail list logo