<div dir="ltr">Oh, sorry, I see you are zmodem... yay for getting used to more usernames - thanks for the workaround :)</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 24, 2022 at 3:05 PM David Blaikie <<a href="mailto:dblaikie@gmail.com">dblaikie@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Looks like that got addressed/worked around with <a href="https://github.com/llvm/llvm-project/commit/38e16e1cebb891ad47b85727bf46f7dac6d7da94" target="_blank">https://github.com/llvm/llvm-project/commit/38e16e1cebb891ad47b85727bf46f7dac6d7da94</a><br><br>I'll look into it further once I've cleaned up other live fallout.</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 24, 2022 at 10:01 AM Hans Wennborg <<a href="mailto:hans@chromium.org" target="_blank">hans@chromium.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">For me, this broke some tests of the profiling runtime:<br>
<br>
$ ninja check-profile<br>
...<br>
Failed Tests (2):<br>
  Profile-i386 :: Linux/instrprof-debug-info-correlate.c<br>
  Profile-x86_64 :: Linux/instrprof-debug-info-correlate.c<br>
<br>
Annoyingly, I can't find any buildbots where this fails, but I'm not<br>
really sure which ones test this runtime.<br>
<br>
It also reproduces on Chromium's builders, e.g.<br>
<a href="https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket/8824141369391584977/+/u/package_clang/stdout" rel="noreferrer" target="_blank">https://logs.chromium.org/logs/chromium/buildbucket/cr-buildbucket/8824141369391584977/+/u/package_clang/stdout</a><br>
<br>
Filed <a href="https://github.com/llvm/llvm-project/issues/53387" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/issues/53387</a><br>
<br>
<br>
On Mon, Jan 24, 2022 at 5:50 AM David Blaikie via cfe-commits<br>
<<a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a>> wrote:<br>
><br>
><br>
> Author: David Blaikie<br>
> Date: 2022-01-23T20:49:57-08:00<br>
> New Revision: d3b26dea16108c427b19b5480c9edc76edf8f5b4<br>
><br>
> URL: <a href="https://github.com/llvm/llvm-project/commit/d3b26dea16108c427b19b5480c9edc76edf8f5b4" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/d3b26dea16108c427b19b5480c9edc76edf8f5b4</a><br>
> DIFF: <a href="https://github.com/llvm/llvm-project/commit/d3b26dea16108c427b19b5480c9edc76edf8f5b4.diff" rel="noreferrer" target="_blank">https://github.com/llvm/llvm-project/commit/d3b26dea16108c427b19b5480c9edc76edf8f5b4.diff</a><br>
><br>
> LOG: Clang: Change the default DWARF version to 5<br>
><br>
> (except on platforms that already opt in to specific versions - SCE,<br>
> Android, and Darwin using DWARFv4 explicitly, for instance)<br>
><br>
> Added:<br>
><br>
><br>
> Modified:<br>
>     clang/docs/ReleaseNotes.rst<br>
>     clang/include/clang/Driver/ToolChain.h<br>
>     clang/lib/Driver/ToolChains/Linux.h<br>
>     clang/test/CodeGen/debug-info-extern-call.c<br>
>     clang/test/CodeGen/dwarf-version.c<br>
>     clang/test/Driver/cl-options.c<br>
>     clang/test/Driver/clang-g-opts.c<br>
>     clang/test/Driver/ve-toolchain.c<br>
>     clang/test/Driver/ve-toolchain.cpp<br>
><br>
> Removed:<br>
><br>
><br>
><br>
> ################################################################################<br>
> diff  --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst<br>
> index 2eec63901932e..4fe037741256f 100644<br>
> --- a/clang/docs/ReleaseNotes.rst<br>
> +++ b/clang/docs/ReleaseNotes.rst<br>
> @@ -252,6 +252,14 @@ X86 Support in Clang<br>
><br>
>  - Support for ``AVX512-FP16`` instructions has been added.<br>
><br>
> +DWARF Support in Clang<br>
> +----------------------<br>
> +<br>
> +- The default DWARF version has increased from DWARFv4 to DWARFv5.  You can opt<br>
> +  back in to the old behavior with -gdwarf-4. Some platforms (Darwin, Android,<br>
> +  and SCE for instance) already opt out of this version bump as is suitable for<br>
> +  the platform<br>
> +<br>
>  Arm and AArch64 Support in Clang<br>
>  --------------------------------<br>
><br>
><br>
> diff  --git a/clang/include/clang/Driver/ToolChain.h b/clang/include/clang/Driver/ToolChain.h<br>
> index eb95806a2f75d..37011de6bd6d7 100644<br>
> --- a/clang/include/clang/Driver/ToolChain.h<br>
> +++ b/clang/include/clang/Driver/ToolChain.h<br>
> @@ -510,7 +510,7 @@ class ToolChain {<br>
><br>
>    // Return the DWARF version to emit, in the absence of arguments<br>
>    // to the contrary.<br>
> -  virtual unsigned GetDefaultDwarfVersion() const { return 4; }<br>
> +  virtual unsigned GetDefaultDwarfVersion() const { return 5; }<br>
><br>
>    // Some toolchains may have<br>
> diff erent restrictions on the DWARF version and<br>
>    // may need to adjust it. E.g. NVPTX may need to enforce DWARF2 even when host<br>
><br>
> diff  --git a/clang/lib/Driver/ToolChains/Linux.h b/clang/lib/Driver/ToolChains/Linux.h<br>
> index a5ec33bd44f10..a5648d79d655f 100644<br>
> --- a/clang/lib/Driver/ToolChains/Linux.h<br>
> +++ b/clang/lib/Driver/ToolChains/Linux.h<br>
> @@ -40,6 +40,7 @@ class LLVM_LIBRARY_VISIBILITY Linux : public Generic_ELF {<br>
>    void AddIAMCUIncludeArgs(const llvm::opt::ArgList &DriverArgs,<br>
>                             llvm::opt::ArgStringList &CC1Args) const override;<br>
>    RuntimeLibType GetDefaultRuntimeLibType() const override;<br>
> +  unsigned GetDefaultDwarfVersion() const override;<br>
>    CXXStdlibType GetDefaultCXXStdlibType() const override;<br>
>    bool<br>
>    IsAArch64OutlineAtomicsDefault(const llvm::opt::ArgList &Args) const override;<br>
><br>
> diff  --git a/clang/test/CodeGen/debug-info-extern-call.c b/clang/test/CodeGen/debug-info-extern-call.c<br>
> index 7cf90550ac00a..fad52d0df0b3f 100644<br>
> --- a/clang/test/CodeGen/debug-info-extern-call.c<br>
> +++ b/clang/test/CodeGen/debug-info-extern-call.c<br>
> @@ -12,13 +12,13 @@<br>
>  // decls so that the dwarf generator can describe information needed for tail<br>
>  // call frame reconstrution.<br>
>  //<br>
> -// RUN: %clang -g -O2 -target x86_64-none-linux-gnu -ggdb -S -emit-llvm %s -o - \<br>
> +// RUN: %clang -gdwarf-4 -O2 -target x86_64-none-linux-gnu -ggdb -S -emit-llvm %s -o - \<br>
>  // RUN:   | FileCheck %s -check-prefix=DECLS-FOR-EXTERN<br>
>  //<br>
>  // Do not emit a subprogram for extern decls when entry values are disabled and<br>
>  // the tuning is not set to gdb.<br>
>  //<br>
> -// RUN: %clang -g -O2 -target x86_64-none-linux-gnu -gsce -S -emit-llvm %s -o - \<br>
> +// RUN: %clang -gdwarf-4 -O2 -target x86_64-none-linux-gnu -gsce -S -emit-llvm %s -o - \<br>
>  // RUN:   | FileCheck %s -check-prefix=NO-DECLS-FOR-EXTERN<br>
><br>
>  // DECLS-FOR-EXTERN-NOT: !DICompileUnit({{.*}}retainedTypes: !{{[0-9]+}}<br>
><br>
> diff  --git a/clang/test/CodeGen/dwarf-version.c b/clang/test/CodeGen/dwarf-version.c<br>
> index 6d131c470d5b3..b329556ae0d9d 100644<br>
> --- a/clang/test/CodeGen/dwarf-version.c<br>
> +++ b/clang/test/CodeGen/dwarf-version.c<br>
> @@ -2,8 +2,8 @@<br>
>  // RUN: %clang -target x86_64-linux-gnu -gdwarf-3 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER3<br>
>  // RUN: %clang -target x86_64-linux-gnu -gdwarf-4 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4<br>
>  // RUN: %clang -target x86_64-linux-gnu -gdwarf-5 -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5<br>
> -// RUN: %clang -target x86_64-linux-gnu -g -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4<br>
> -// RUN: %clang -target x86_64-linux-gnu -gdwarf -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER4<br>
> +// RUN: %clang -target x86_64-linux-gnu -g -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5<br>
> +// RUN: %clang -target x86_64-linux-gnu -gdwarf -S -emit-llvm -o - %s | FileCheck %s --check-prefix=VER5<br>
><br>
>  // The -isysroot is used as a hack to avoid LIT messing with the SDKROOT<br>
>  // environment variable which indirecty overrides the version in the target<br>
> @@ -28,10 +28,10 @@<br>
>  // RUN:     | FileCheck %s --check-prefixes=NODWARF,CODEVIEW<br>
>  //     Explicitly request DWARF.<br>
>  // RUN: %clang -target i686-pc-windows-msvc -gdwarf -S -emit-llvm -o - %s \<br>
> -// RUN:     | FileCheck %s --check-prefixes=VER4,NOCODEVIEW<br>
> +// RUN:     | FileCheck %s --check-prefixes=VER5,NOCODEVIEW<br>
>  //     Explicitly request both.<br>
>  // RUN: %clang -target i686-pc-windows-msvc -gdwarf -gcodeview -S -emit-llvm -o - %s \<br>
> -// RUN:     | FileCheck %s --check-prefixes=VER4,CODEVIEW<br>
> +// RUN:     | FileCheck %s --check-prefixes=VER5,CODEVIEW<br>
>  // RUN: %clang -target powerpc-ibm-aix-xcoff -g -S -emit-llvm -o - %s | \<br>
>  // RUN:   FileCheck %s --check-prefix=VER3<br>
>  // RUN: %clang -target powerpc-ibm-aix-xcoff -gdwarf-2 -S -emit-llvm -o - %s | \<br>
><br>
> diff  --git a/clang/test/Driver/cl-options.c b/clang/test/Driver/cl-options.c<br>
> index f39db87660125..733e733de738e 100644<br>
> --- a/clang/test/Driver/cl-options.c<br>
> +++ b/clang/test/Driver/cl-options.c<br>
> @@ -596,7 +596,7 @@<br>
>  // RUN: %clang_cl /Z7 -gdwarf /c -### -- %s 2>&1 | FileCheck -check-prefix=Z7_gdwarf %s<br>
>  // Z7_gdwarf: "-gcodeview"<br>
>  // Z7_gdwarf: "-debug-info-kind=constructor"<br>
> -// Z7_gdwarf: "-dwarf-version=4"<br>
> +// Z7_gdwarf: "-dwarf-version=<br>
><br>
>  // RUN: %clang_cl -fmsc-version=1800 -TP -### -- %s 2>&1 | FileCheck -check-prefix=CXX11 %s<br>
>  // CXX11: -std=c++11<br>
><br>
> diff  --git a/clang/test/Driver/clang-g-opts.c b/clang/test/Driver/clang-g-opts.c<br>
> index bb129e75769c9..d982b1070cae1 100644<br>
> --- a/clang/test/Driver/clang-g-opts.c<br>
> +++ b/clang/test/Driver/clang-g-opts.c<br>
> @@ -32,7 +32,7 @@<br>
><br>
>  // CHECK-WITHOUT-G-NOT: -debug-info-kind<br>
>  // CHECK-WITH-G: "-debug-info-kind=constructor"<br>
> -// CHECK-WITH-G: "-dwarf-version=4"<br>
> +// CHECK-WITH-G: "-dwarf-version=5"<br>
>  // CHECK-WITH-G-DWARF2: "-dwarf-version=2"<br>
><br>
>  // CHECK-WITH-G-STANDALONE: "-debug-info-kind=standalone"<br>
><br>
> diff  --git a/clang/test/Driver/ve-toolchain.c b/clang/test/Driver/ve-toolchain.c<br>
> index 8878bd8f83cc0..35af3c81c4c6f 100644<br>
> --- a/clang/test/Driver/ve-toolchain.c<br>
> +++ b/clang/test/Driver/ve-toolchain.c<br>
> @@ -6,7 +6,7 @@<br>
>  /// Checking dwarf-version<br>
><br>
>  // RUN: %clang -### -g -target ve %s 2>&1 | FileCheck -check-prefix=DWARF_VER %s<br>
> -// DWARF_VER: "-dwarf-version=4"<br>
> +// DWARF_VER: "-dwarf-version=5"<br>
><br>
>  ///-----------------------------------------------------------------------------<br>
>  /// Checking include-path<br>
><br>
> diff  --git a/clang/test/Driver/ve-toolchain.cpp b/clang/test/Driver/ve-toolchain.cpp<br>
> index 7666cfbfe8b27..7447f34b70e0c 100644<br>
> --- a/clang/test/Driver/ve-toolchain.cpp<br>
> +++ b/clang/test/Driver/ve-toolchain.cpp<br>
> @@ -7,7 +7,7 @@<br>
><br>
>  // RUN: %clangxx -### -g -target ve-unknown-linux-gnu \<br>
>  // RUN:     %s 2>&1 | FileCheck -check-prefix=DWARF_VER %s<br>
> -// DWARF_VER: "-dwarf-version=4"<br>
> +// DWARF_VER: "-dwarf-version=5"<br>
><br>
>  ///-----------------------------------------------------------------------------<br>
>  /// Checking include-path<br>
><br>
><br>
><br>
> _______________________________________________<br>
> cfe-commits mailing list<br>
> <a href="mailto:cfe-commits@lists.llvm.org" target="_blank">cfe-commits@lists.llvm.org</a><br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits</a><br>
</blockquote></div>
</blockquote></div>