Page MenuHomePhabricator

hubert.reinterpretcast (Hubert Tong)
User

Projects

User does not belong to any projects.

User Details

User Since
Aug 27 2014, 8:34 PM (447 w, 5 d)

Recent Activity

Today

hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Tue, Mar 28, 5:07 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Tue, Mar 28, 5:04 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Tue, Mar 28, 4:42 PM · Restricted Project, Restricted Project

Yesterday

hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Mon, Mar 27, 9:38 PM · Restricted Project, Restricted Project

Wed, Mar 22

hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Wed, Mar 22, 6:22 PM · Restricted Project, Restricted Project

Wed, Mar 15

hubert.reinterpretcast accepted D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.

Patch LGTM. Thanks for looking into the concerns.

Wed, Mar 15, 8:46 AM · Restricted Project, Restricted Project

Tue, Mar 14

hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Tue, Mar 14, 9:22 PM · Restricted Project, Restricted Project

Wed, Mar 8

hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Wed, Mar 8, 10:40 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Wed, Mar 8, 10:38 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Wed, Mar 8, 10:25 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Wed, Mar 8, 10:12 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Wed, Mar 8, 9:00 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Wed, Mar 8, 8:41 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Wed, Mar 8, 7:50 PM · Restricted Project, Restricted Project
hubert.reinterpretcast accepted D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.

This LGTM; thanks!

Wed, Mar 8, 7:16 PM · Restricted Project, Restricted Project

Tue, Mar 7

hubert.reinterpretcast updated subscribers of D144190: [AIX][clang] Storage Locations for Constant Pointers.
Tue, Mar 7, 10:24 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Tue, Mar 7, 10:00 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Tue, Mar 7, 5:01 PM · Restricted Project, Restricted Project

Sun, Mar 5

hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Sun, Mar 5, 7:15 PM · Restricted Project, Restricted Project

Fri, Mar 3

hubert.reinterpretcast added a comment to D144846: [IR][Legalization] Promote illegal deinterleave and interleave vectors.

Hi, this change caused some failures on AIX. Could you take a look please?

Fri, Mar 3, 11:53 AM · Restricted Project, Restricted Project

Thu, Mar 2

hubert.reinterpretcast added a comment to D142842: [libc++] Remove _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION.

@philnik, can you update this to always have the key function on AIX and remove it for other platforms?

Thu, Mar 2, 3:25 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142282: [Support] Implement findModulesAndOffsets on Apple 64-bit platforms.
Thu, Mar 2, 12:31 PM · Restricted Project, Restricted Project

Wed, Mar 1

hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Wed, Mar 1, 9:01 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Wed, Mar 1, 8:43 PM · Restricted Project, Restricted Project

Feb 24 2023

hubert.reinterpretcast added a comment to D134282: [CGP] Add generic TargetLowering::shouldAlignPointerArgs() implementation.

Not that I know of without negative side-effects. For example, if we access using a TOC entry for a label for the individual string, we would end up with more TOC entries which, in turn, can lead to TOC overflow.

Feb 24 2023, 5:31 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D144189: [AIX][CodeGen] Storage Locations for Constant Pointers.
Feb 24 2023, 12:38 PM · Restricted Project, Restricted Project
hubert.reinterpretcast requested changes to D144190: [AIX][clang] Storage Locations for Constant Pointers.
Feb 24 2023, 12:34 PM · Restricted Project, Restricted Project

Feb 23 2023

hubert.reinterpretcast added a comment to D134282: [CGP] Add generic TargetLowering::shouldAlignPointerArgs() implementation.

Is there any way we can make AIX targets more resilient handling this kind of alignment change? If we have to, we can choose a point after which passes aren't allowed to increase the alignment of globals, and move this transform before that. But I'd like to avoid that if possible.

Feb 23 2023, 3:58 PM · Restricted Project, Restricted Project

Feb 21 2023

hubert.reinterpretcast added a comment to D134282: [CGP] Add generic TargetLowering::shouldAlignPointerArgs() implementation.

It fails with a different assembler error on different platforms (tried on AIX, linux, and mac). No error if you remove the AIX target.

clang++ -target powerpc64-ibm-aix -c foo.cc
Feb 21 2023, 9:32 PM · Restricted Project, Restricted Project

Feb 16 2023

hubert.reinterpretcast added inline comments to D143670: Stop claiming we support [[carries_dependency]].
Feb 16 2023, 3:18 PM · Restricted Project, Restricted Project

Feb 15 2023

hubert.reinterpretcast added a comment to D142867: [Clang] Add machinery to catch overflow in unary minus outside of a constant expression context.

The warning now fires even if overflow is prevented with if constexpr:

if constexpr (width <= 64) {
  if constexpr (width == 64) {
    return 1;
  }
  return -static_cast<int64_t>(uint64_t{1} << (width - 1));
}

https://godbolt.org/z/M3xdcKd3M

Feb 15 2023, 4:36 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases..

This is an ABI breaking change, isn't it? (The type trait now returns something different than it did before, which could change instantiations or object layout.)

Feb 15 2023, 7:52 AM · Restricted Project, Restricted Project

Feb 9 2023

hubert.reinterpretcast added a comment to D143670: Stop claiming we support [[carries_dependency]].

I think it may be an option to use the gnu++* modes to do deliberately non-conforming things, but I believe there should be an RFC for that first.

Feb 9 2023, 6:42 PM · Restricted Project, Restricted Project
hubert.reinterpretcast requested changes to D143670: Stop claiming we support [[carries_dependency]].
Feb 9 2023, 6:17 PM · Restricted Project, Restricted Project

Feb 2 2023

hubert.reinterpretcast accepted D143010: [libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object.

LGTM; thanks!

Feb 2 2023, 9:49 AM · Restricted Project, Restricted Project, Restricted Project

Feb 1 2023

hubert.reinterpretcast requested changes to D139586: [Clang][C++23] Lifetime extension in range-based for loops.

Waiting on changes to fix the visitation to locate the appropriate temporaries.

Feb 1 2023, 8:16 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D143010: [libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object.
Feb 1 2023, 4:39 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D143010: [libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object.
Feb 1 2023, 4:29 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D143010: [libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object.

I made changes to the patch description (which I expect we will be using for the commit message).

Feb 1 2023, 4:01 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast updated the summary of D143010: [libc++abi][AIX] Skip non-C++ EH aware frames when retrieving exception object.
Feb 1 2023, 2:28 PM · Restricted Project, Restricted Project, Restricted Project

Jan 23 2023

hubert.reinterpretcast committed rG0f5099cd9422: Opting out of Clang 16 ABI Changes for AIX and z/OS (authored by nicolerabjohn).
Opting out of Clang 16 ABI Changes for AIX and z/OS
Jan 23 2023, 10:14 PM · Restricted Project, Restricted Project
hubert.reinterpretcast closed D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 10:14 PM · Restricted Project, Restricted Project
hubert.reinterpretcast retitled D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS from Opting out of Clang 15 ABI Changes for AIX and z/OS to Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 9:09 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.

Since this is a change only for AIX and z/OS, and considering that this is a patch to prevent ABI changes compared to the current ABI baselines for those platforms, I will land this ahead of the LLVM 16 branching.

Jan 23 2023, 8:48 PM · Restricted Project, Restricted Project
hubert.reinterpretcast accepted D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.

Thanks @nicolerabjohn; this LGTM!

Jan 23 2023, 8:43 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 2:50 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:57 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:54 PM · Restricted Project, Restricted Project
hubert.reinterpretcast updated the summary of D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:34 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:27 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:23 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 1:07 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D142358: Opting out of Clang 16 ABI Changes for AIX and z/OS.
Jan 23 2023, 8:08 AM · Restricted Project, Restricted Project

Jan 5 2023

hubert.reinterpretcast added a comment to D140675: [AIX][libc++] Always opt in to _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION.

@francii, from offline discussion, a change is pending to use a different approach (the current one here breaks load ABI). If the change is going to take time, please mark this as having changes planned (i.e., not ready for review).

Jan 5 2023, 8:50 AM · Restricted Project, Restricted Project

Jan 3 2023

hubert.reinterpretcast added a comment to D137756: [z/OS][pg] Throw error when using -pg on z/OS.

Most targets reject -p now. It's unnecessary to have another z/OS specific diagnostic. So this patch can be abandoned.

% fclang -p a.cc
clang-16: error: unsupported option '-p' for target 'x86_64-unknown-linux-gnu'
Jan 3 2023, 9:23 AM · Restricted Project, Restricted Project

Dec 15 2022

hubert.reinterpretcast added a comment to D139586: [Clang][C++23] Lifetime extension in range-based for loops.

At least on the surface, it looks like there will be a lot of trouble to deal with default arguments:

struct A { A(); ~A(); int x[3]; };
int (&f(const A & = A()))[3];
void bar(int);
void foo() {
  for (auto e : f()) { bar(e); }
}
Dec 15 2022, 8:14 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D139586: [Clang][C++23] Lifetime extension in range-based for loops.

I will try to do a more detailed review later, but at least I think we might want more tests. Maybe codegen tests that do not rely on [[clang::lifetimebound]], and tests with more chaining (a().b().c()) .

Dec 15 2022, 3:53 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D139586: [Clang][C++23] Lifetime extension in range-based for loops.

The (non-wording) paper makes a pretty convincing case to just apply this retroactively to any C++11 code (https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2644r1.pdf). I think we should apply this retroactively, maybe add a pedantic warning when we do a lifetime extension on code before C++23.

Dec 15 2022, 11:16 AM · Restricted Project, Restricted Project

Nov 23 2022

hubert.reinterpretcast accepted D138610: [test-suite] Add strings.h header to ClamAV and define _XOPEN_SOURCE=600 on AIX for ClamAV/archie-client..

LGTM; thanks!

Nov 23 2022, 8:00 PM · Restricted Project
hubert.reinterpretcast added inline comments to D138610: [test-suite] Add strings.h header to ClamAV and define _XOPEN_SOURCE=600 on AIX for ClamAV/archie-client..
Nov 23 2022, 3:00 PM · Restricted Project

Nov 22 2022

hubert.reinterpretcast accepted D138510: [lit][AIX] Add LIBPATH to pass through env vars.

LGTM; thanks!

Nov 22 2022, 10:50 AM · Restricted Project, Restricted Project
hubert.reinterpretcast updated the summary of D138510: [lit][AIX] Add LIBPATH to pass through env vars.
Nov 22 2022, 10:48 AM · Restricted Project, Restricted Project

Nov 16 2022

hubert.reinterpretcast accepted D137986: [Clang][CodeGen][AIX] Map __builtin_frexpl, __builtin_ldexpl, and __builtin_modfl to 'double' version lib calls in 64-bit 'long double' mode.

LGTM; thanks!

Nov 16 2022, 3:57 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast accepted D137230: [XCOFF] set fragment for XMC_PR csects..

LGTM; no objection if we're planning to move ahead without checking the calculated size field in the traceback table.

Nov 16 2022, 2:56 PM · Restricted Project, Restricted Project

Nov 15 2022

hubert.reinterpretcast added inline comments to D137986: [Clang][CodeGen][AIX] Map __builtin_frexpl, __builtin_ldexpl, and __builtin_modfl to 'double' version lib calls in 64-bit 'long double' mode.
Nov 15 2022, 4:43 PM · Restricted Project, Restricted Project, Restricted Project

Nov 14 2022

hubert.reinterpretcast added a comment to D137230: [XCOFF] set fragment for XMC_PR csects..

I am a bit torn over not actually checking that the calculated function sizes are correct, but I guess that we can infer from there being no relocations generated for it that we are going through the right MCExpr processing.

Nov 14 2022, 10:18 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D137230: [XCOFF] set fragment for XMC_PR csects..

Addressed comments.

Nov 14 2022, 10:02 PM · Restricted Project, Restricted Project

Nov 12 2022

hubert.reinterpretcast added inline comments to D137230: [XCOFF] set fragment for XMC_PR csects..
Nov 12 2022, 2:31 PM · Restricted Project, Restricted Project

Nov 4 2022

hubert.reinterpretcast added inline comments to D137436: [lit][AIX] Convert llvm tests to use 'target={{.*}}-aix{{.*}}'.
Nov 4 2022, 9:55 AM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D137437: [lit][AIX] Convert clang tests to use 'target={{.*}}-aix{{.*}}'.
Nov 4 2022, 9:55 AM · Restricted Project, Restricted Project
hubert.reinterpretcast committed rG6ace52e5e49c: [Driver][AIX] Change UNSUPPORTED to XFAIL system-aix (authored by hubert.reinterpretcast).
[Driver][AIX] Change UNSUPPORTED to XFAIL system-aix
Nov 4 2022, 9:30 AM · Restricted Project, Restricted Project

Nov 3 2022

hubert.reinterpretcast added inline comments to D137230: [XCOFF] set fragment for XMC_PR csects..
Nov 3 2022, 10:33 PM · Restricted Project, Restricted Project
hubert.reinterpretcast updated subscribers of rGfdab9f1203ee: [Clang] Check for response file existence prior to check for recursion.
Nov 3 2022, 2:54 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to rGfdab9f1203ee: [Clang] Check for response file existence prior to check for recursion.
Nov 3 2022, 2:54 PM · Restricted Project, Restricted Project, Restricted Project

Nov 2 2022

hubert.reinterpretcast accepted D136950: [XCOFF] change the decoding of External symbol's function auxiliary entry in XCOFF32 for llvm-readobj .

LGTM with comment.

Nov 2 2022, 3:22 PM · Restricted Project, Restricted Project

Nov 1 2022

hubert.reinterpretcast added a comment to D137110: [libc++] Option to specify a different compiler for testing.

What's the use case? I find this potentially problematic. What if the compiler specified for running tests with doesn't support the same set of flags as the one used for building?

Nov 1 2022, 10:52 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D137110: [libc++] Option to specify a different compiler for testing.

But first, I'd like to understand why you're not setting CMAKE_CXX_COMPILER to the compiler you're trying to run the tests with?

Nov 1 2022, 10:42 AM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136950: [XCOFF] change the decoding of External symbol's function auxiliary entry in XCOFF32 for llvm-readobj .
Nov 1 2022, 8:25 AM · Restricted Project, Restricted Project

Oct 31 2022

hubert.reinterpretcast added inline comments to D136568: [Clang] Support constexpr builtin ilogb.
Oct 31 2022, 9:49 AM · Restricted Project, Restricted Project, Restricted Project

Oct 30 2022

hubert.reinterpretcast requested changes to D136568: [Clang] Support constexpr builtin ilogb.
Oct 30 2022, 5:35 PM · Restricted Project, Restricted Project, Restricted Project

Oct 28 2022

hubert.reinterpretcast added inline comments to rGe4ec6ce8a75c: Clang: Add release note for defaulted-special-members-POD GCC ABI fix.
Oct 28 2022, 3:49 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136950: [XCOFF] change the decoding of External symbol's function auxiliary entry in XCOFF32 for llvm-readobj .
Oct 28 2022, 10:14 AM · Restricted Project, Restricted Project

Oct 27 2022

hubert.reinterpretcast added inline comments to rGe4ec6ce8a75c: Clang: Add release note for defaulted-special-members-POD GCC ABI fix.
Oct 27 2022, 5:19 PM · Restricted Project, Restricted Project
hubert.reinterpretcast updated subscribers of rGe4ec6ce8a75c: Clang: Add release note for defaulted-special-members-POD GCC ABI fix.
Oct 27 2022, 5:15 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136568: [Clang] Support constexpr builtin ilogb.
Oct 27 2022, 11:20 AM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136568: [Clang] Support constexpr builtin ilogb.
Oct 27 2022, 11:11 AM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136568: [Clang] Support constexpr builtin ilogb.
Oct 27 2022, 10:52 AM · Restricted Project, Restricted Project, Restricted Project

Oct 25 2022

hubert.reinterpretcast added a comment to D134253: [AIX][PGO] Add missing visibility attribute on an internal function..

@w2yehia, this can be closed now (the other patch that also covers what this one is solving has landed)?

Oct 25 2022, 4:15 PM · Restricted Project

Oct 24 2022

hubert.reinterpretcast accepted D136257: [libc++abi][AIX] Use reserved slot in stack to pass the address of exception object.

Confirming LGTM from the AIX side.

Oct 24 2022, 6:00 PM · Restricted Project, Restricted Project, Restricted Project

Oct 20 2022

hubert.reinterpretcast accepted D136192: [PGO][AIX] Improve dummy var retention and allow -bcdtors:csect linking..

This LGTM. Size of Registration changes from 1 byte to (likely) 4 bytes on non-AIX platforms and now incurs an extra memory write, but that should be insignificant.

Oct 20 2022, 4:15 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Oct 19 2022

hubert.reinterpretcast accepted D136257: [libc++abi][AIX] Use reserved slot in stack to pass the address of exception object.

LGTM from the AIX perspective.

Oct 19 2022, 9:31 AM · Restricted Project, Restricted Project, Restricted Project

Oct 18 2022

hubert.reinterpretcast added inline comments to D134253: [AIX][PGO] Add missing visibility attribute on an internal function..
Oct 18 2022, 12:55 PM · Restricted Project
hubert.reinterpretcast added inline comments to D136192: [PGO][AIX] Improve dummy var retention and allow -bcdtors:csect linking..
Oct 18 2022, 12:50 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D136192: [PGO][AIX] Improve dummy var retention and allow -bcdtors:csect linking..
Oct 18 2022, 12:37 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project

Oct 17 2022

hubert.reinterpretcast updated the summary of D135384: [AIX] Fix mcount name and call arguments.
Oct 17 2022, 12:53 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast updated the summary of D135384: [AIX] Fix mcount name and call arguments.
Oct 17 2022, 12:52 PM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast updated the summary of D135384: [AIX] Fix mcount name and call arguments.
Oct 17 2022, 12:51 PM · Restricted Project, Restricted Project, Restricted Project

Oct 14 2022

hubert.reinterpretcast added a comment to D135919: [Clang] Correct when Itanium ABI guard variables are set for non-block variables with static or thread storage duration..

the case from https://github.com/llvm/llvm-project/issues/57828 is not for a block-scope variable, but the case in the patch description is...

Thanks, Hubert. Yes, I found that the reported issue occurred for any case where thread safe guard variables are not required. I chose the block-scope variable example for the patch summary because I felt it better presented the issue.

Your question inspired me to do some additional testing though and I see both gcc and icc also exhibit the re-initialization behavior for that case, but not the case reported in https://github.com/llvm/llvm-project/issues/57828.

Oct 14 2022, 12:54 PM · Restricted Project, Restricted Project
hubert.reinterpretcast added inline comments to D134938: Use builtins in <math.h>.
Oct 14 2022, 9:47 AM · Restricted Project, Restricted Project, Restricted Project
hubert.reinterpretcast added a comment to D135919: [Clang] Correct when Itanium ABI guard variables are set for non-block variables with static or thread storage duration..

We can't set the flag if initialization is aborted by an exception, which is not ruled out by the use of thread-unsafe statics. So this is not a correct change.

Oct 14 2022, 9:38 AM · Restricted Project, Restricted Project