5.0.1-rc2 has been tagged

classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
Hi,

I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
your results.

-Tom
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
On Wed, Nov 29, 2017 at 4:19 PM, Tom Stellard via cfe-dev
<[hidden email]> wrote:
> Hi,
>
> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.

Windows is ready:
$ sha1sum LLVM-5.0.1-rc2-win*
4b0b50374fe201e1da32fba5ce9b579663ba99a4  LLVM-5.0.1-rc2-win32.exe
8bfebc0330999a01d451ed50a87f9f124e86bc75  LLVM-5.0.1-rc2-win64.exe



>
> -Tom
> _______________________________________________
> cfe-dev mailing list
> [hidden email]
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
W dniu śro, 29.11.2017 o godzinie 16∶19 -0800, użytkownik Tom Stellard
via Release-testers napisał:
> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.

I've run Gentoo tests on the current git release_50 branch, and found
two issues:

a. LLDB is still randomly completely broken on my x86 (32-bit) chroot.
This is not a regression, and I really have no clue what's wrong with
it. Fact is, I had the same problem on amd64 and it seems that it
miraculously started working while I've been trying to figure it out.

b. Four sanitizer tests fail on my x86 chroot:

Failing Tests (4):                                                  
    LeakSanitizer-AddressSanitizer-i386 ::
TestCases/large_allocation_leak.cc
    LeakSanitizer-AddressSanitizer-i386 :: TestCases/stale_stack_leak.cc
    LeakSanitizer-Standalone-i386 :: TestCases/large_allocation_leak.cc
    LeakSanitizer-Standalone-i386 :: TestCases/stale_stack_leak.cc

Curious enough, the same tests work fine as part of amd64 build. I'm not
sure if it's a regression; it is possible that I've skipped x86
sanitizer tests previously assuming that they're tested as part of amd64
build anyway. I will try 5.0.0 for comparison shortly.

--
Best regards,
Michał Górny

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev


On Wed, Nov 29, 2017 at 6:19 PM, Tom Stellard via Release-testers <[hidden email]> wrote:
Hi,

I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
your results.




SLES11 uploaded.

1312db7bdfd05c82dd52983f8c5df1a6819df79f  clang+llvm-5.0.1-rc2-linux-x86_64-sles11.3.tar.xz

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
Uploaded ARM & AArch64, both look ok.

d5d0db7e1b8c6965d02ac4e808b06d557692f65a
clang+llvm-5.0.1-rc2-aarch64-linux-gnu.tar.xz
9c60961ad7417f5e296330428e1f2bf4863b07e7
clang+llvm-5.0.1-rc2-armv7a-linux-gnueabihf.tar.xz

Cheers,
Diana

On 1 December 2017 at 03:05, Brian Cain via llvm-dev
<[hidden email]> wrote:

>
>
> On Wed, Nov 29, 2017 at 6:19 PM, Tom Stellard via Release-testers
> <[hidden email]> wrote:
>>
>> Hi,
>>
>> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
>> your results.
>>
>>
>
>
> SLES11 uploaded.
>
> 1312db7bdfd05c82dd52983f8c5df1a6819df79f
> clang+llvm-5.0.1-rc2-linux-x86_64-sles11.3.tar.xz
>
> _______________________________________________
> LLVM Developers mailing list
> [hidden email]
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
On 30/11/2017 01:19, Tom Stellard via Release-testers wrote:
> Hi,
>
> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.
Besides an intermittent issue with mips64el (not a recent regression), looks great!
Thanks
S

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
On 30 Nov 2017, at 01:19, Tom Stellard via Release-testers <[hidden email]> wrote:
> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.

Built and uploaded for FreeBSD 10:

SHA256 (clang+llvm-5.0.1-rc2-amd64-unknown-freebsd10.tar.xz) = 0a0e62f346558ef7d63557836feba3510e2d4c1178abe5b1805ceaa395d316b7
SHA256 (clang+llvm-5.0.1-rc2-i386-unknown-freebsd10.tar.xz) = 1172be40df1f8051535443b0374472fa58900879752aa150ac8286f140cc6b1e

-Dimitry


_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev

signature.asc (230 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
Zig tests using Debug build of 5.0.1rc2 hit this bug: https://bugs.llvm.org/show_bug.cgi?id=34452
I suppose the fix has not been backported to 5.0.1.

So I created a Release build of 5.0.1rc2 and all zig tests pass, with the following patches:

* Patches to LLD:

commit a206ef34bbbc46017e471063a4a1832c1ddafb0a
Author: Andrew Kelley <[hidden email]>
Date:   Fri Dec 1 12:11:55 2017 -0500

    LLD patch: Fix the ASM code generated for __stub_helpers section
   
    This applies 93ca847862af07632197dcf2d8a68b9b27a26d7a
    from the llvm-project git monorepo to the embedded LLD.

commit ddca67a2b94f68985789fc8254fd1326e26269f6
Author: Andrew Kelley <[hidden email]>
Date:   Fri Dec 1 12:09:55 2017 -0500

    LLD patch: workaround for buggy MACH-O code
   
    This reapplies 1a1414fc42c7beb25b6de4134d99884ea6544b57
    to the embedded LLD.
diff --git a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
index d687ca5d..07958da4 100644
--- a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
+++ b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
@@ -617,7 +617,6 @@ void ArchHandler_x86_64::applyFixupFinal(
     // Fall into llvm_unreachable().
     break;
   }
-  llvm_unreachable("invalid x86_64 Reference Kind");
 }
 
 void ArchHandler_x86_64::applyFixupRelocatable(const Reference &ref,


commit fa45407e78c7a20281bf063f659d74f86c127ea1
Author: Andrew Kelley <[hidden email]>
Date:   Fri Dec 1 12:08:16 2017 -0500

    LLD patch: Fix for LLD on linker scripts with empty sections
   
    This reapplies 569cf286ff79a10126b9f20f39fa8c64df9b8b25
    to the embedded LLD.
diff --git a/deps/lld/ELF/LinkerScript.cpp b/deps/lld/ELF/LinkerScript.cpp
index 8bdbd8db..614f5e2c 100644
--- a/deps/lld/ELF/LinkerScript.cpp
+++ b/deps/lld/ELF/LinkerScript.cpp
@@ -751,7 +751,7 @@ void LinkerScript::adjustSectionsAfterSorting() {
     if (auto *Cmd = dyn_cast<OutputSectionCommand>(Base)) {
       Cmd->MemRegion = findMemoryRegion(Cmd);
       // Handle align (e.g. ".foo : ALIGN(16) { ... }").
-      if (Cmd->AlignExpr)
+      if (Cmd->AlignExpr && Cmd->Sec)
         Cmd->Sec->updateAlignment(Cmd->AlignExpr().getValue());
     }
   }


commit 9ea23272fac7f4580d29f7ee557108883f127a5d
Author: Andrew Kelley <[hidden email]>
Date:   Fri Dec 1 12:06:33 2017 -0500

    LLD patch: COFF: better behavior when using as a library
   
    This applies de776439b61fb71c1256ad86238799c758c66048
    from the LLVM git monorepo to the embedded LLD.



* Patches to clang headers:

diff --git a/c_headers/stdarg.h b/c_headers/stdarg.h
index d603d353..101426ff 100644
--- a/c_headers/stdarg.h
+++ b/c_headers/stdarg.h
@@ -26,14 +26,10 @@
 #ifndef __STDARG_H
 #define __STDARG_H
 
-/* zig: added because macos _va_list.h was duplicately defining va_list
- */
 #ifndef _VA_LIST
-#ifndef _VA_LIST_T
 typedef __builtin_va_list va_list;
 #define _VA_LIST
 #endif
-#endif
 #define va_start(ap, param) __builtin_va_start(ap, param)
 #define va_end(ap)          __builtin_va_end(ap)
 #define va_arg(ap, type)    __builtin_va_arg(ap, type)
@@ -50,9 +46,6 @@ typedef __builtin_va_list va_list;
 #ifndef __GNUC_VA_LIST
 #define __GNUC_VA_LIST 1
 typedef __builtin_va_list __gnuc_va_list;
-/* zig: added because glibc stdio.h was duplicately defining va_list
- */
-#define _VA_LIST_DEFINED
 #endif
 
 #endif /* __STDARG_H */
diff --git a/c_headers/stddef.h b/c_headers/stddef.h
index 3b55d42c..73549967 100644
--- a/c_headers/stddef.h
+++ b/c_headers/stddef.h
@@ -48,13 +48,7 @@
 #if !__has_feature(modules)
 #define _PTRDIFF_T
 #endif
-
-/* Zig: wrap in _PTRDIFF_T_DEFINED to protect against mingw defining it twice */
-#if !defined(_PTRDIFF_T_DEFINED)
 typedef __PTRDIFF_TYPE__ ptrdiff_t;
-#define _PTRDIFF_T_DEFINED
-#endif
-
 #endif
 #undef __need_ptrdiff_t
 #endif /* defined(__need_ptrdiff_t) */
@@ -65,24 +59,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
 #if !__has_feature(modules)
 #define _SIZE_T
 #endif
-
-/* Zig: added to avoid collisions with mingw */
-#if !defined(_SIZE_T_DEFINED_)
-#if !defined(_SIZE_T_DEFINED)
-#if !defined(_BSD_SIZE_T_DEFINED_)
-#if !defined(_SIZE_T_DECLARED)
 typedef __SIZE_TYPE__ size_t;
-#define _SIZE_T_DEFINED_
-#define _SIZE_T_DEFINED
-#define _BSD_SIZE_T_DEFINED_
-#define _SIZE_T_DECLARED
-#endif
-#endif
-#endif
-#endif
-
-
-
 #endif
 #undef __need_size_t
 #endif /*defined(__need_size_t) */
@@ -110,22 +87,7 @@ typedef __SIZE_TYPE__ rsize_t;
 #define _WCHAR_T_DEFINED
 #endif
 #endif
-
-/* zig added to prevent duplicate definition with mingw */
-#if !defined(__INT_WCHAR_T_H)
-#if !defined(_GCC_WCHAR_T)
-#if !defined(_WCHAR_T_DECLARED)
-#if !defined(_WCHAR_T_DEFINED)
-#define __INT_WCHAR_T_H
-#define _GCC_WCHAR_T
-#define _WCHAR_T_DECLARED
-#define _WCHAR_T_DEFINED
 typedef __WCHAR_TYPE__ wchar_t;
-#endif
-#endif
-#endif
-#endif
-
 #endif
 #endif
 #undef __need_wchar_t





On Fri, Dec 1, 2017 at 10:30 AM, Sylvestre Ledru via llvm-dev <[hidden email]> wrote:
On 30/11/2017 01:19, Tom Stellard via Release-testers wrote:
> Hi,
>
> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.
Besides an intermittent issue with mips64el (not a recent regression), looks great!
Thanks
S

_______________________________________________
LLVM Developers mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
On 12/01/2017 10:47 AM, Andrew Kelley wrote:
> Zig tests using Debug build of 5.0.1rc2 hit this bug: https://bugs.llvm.org/show_bug.cgi?id=34452 <https://bugs.llvm.org/show_bug.cgi?id=34452>
> I suppose the fix has not been backported to 5.0.1.
>


At this point in the release process, we usually only accept critical fixes
or fixes for regressions.

I'm not familiar with Zig tests, can you give me a little more information
about these tests and how these failures will impact users.

Also are these 4 lld patches backports from trunk?  If so, which revsions are they?

Thanks,
Tom

> So I created a Release build of 5.0.1rc2 and all zig tests pass, with the following patches:
>
> * Patches to LLD:
>
> commit a206ef34bbbc46017e471063a4a1832c1ddafb0a
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:11:55 2017 -0500
>
>     LLD patch: Fix the ASM code generated for __stub_helpers section
>    
>     This applies 93ca847862af07632197dcf2d8a68b9b27a26d7a
>     from the llvm-project git monorepo to the embedded LLD.
>
> commit ddca67a2b94f68985789fc8254fd1326e26269f6
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:09:55 2017 -0500
>
>     LLD patch: workaround for buggy MACH-O code
>    
>     This reapplies 1a1414fc42c7beb25b6de4134d99884ea6544b57
>     to the embedded LLD.
> diff --git a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> index d687ca5d..07958da4 100644
> --- a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> +++ b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> @@ -617,7 +617,6 @@ void ArchHandler_x86_64::applyFixupFinal(
>      // Fall into llvm_unreachable().
>      break;
>    }
> -  llvm_unreachable("invalid x86_64 Reference Kind");
>  }
>  
>  void ArchHandler_x86_64::applyFixupRelocatable(const Reference &ref,
>
>
> commit fa45407e78c7a20281bf063f659d74f86c127ea1
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:08:16 2017 -0500
>
>     LLD patch: Fix for LLD on linker scripts with empty sections
>    
>     This reapplies 569cf286ff79a10126b9f20f39fa8c64df9b8b25
>     to the embedded LLD.
> diff --git a/deps/lld/ELF/LinkerScript.cpp b/deps/lld/ELF/LinkerScript.cpp
> index 8bdbd8db..614f5e2c 100644
> --- a/deps/lld/ELF/LinkerScript.cpp
> +++ b/deps/lld/ELF/LinkerScript.cpp
> @@ -751,7 +751,7 @@ void LinkerScript::adjustSectionsAfterSorting() {
>      if (auto *Cmd = dyn_cast<OutputSectionCommand>(Base)) {
>        Cmd->MemRegion = findMemoryRegion(Cmd);
>        // Handle align (e.g. ".foo : ALIGN(16) { ... }").
> -      if (Cmd->AlignExpr)
> +      if (Cmd->AlignExpr && Cmd->Sec)
>          Cmd->Sec->updateAlignment(Cmd->AlignExpr().getValue());
>      }
>    }
>
>
> commit 9ea23272fac7f4580d29f7ee557108883f127a5d
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:06:33 2017 -0500
>
>     LLD patch: COFF: better behavior when using as a library
>    
>     This applies de776439b61fb71c1256ad86238799c758c66048
>     from the LLVM git monorepo to the embedded LLD.
>
>
>
> * Patches to clang headers:
>
> diff --git a/c_headers/stdarg.h b/c_headers/stdarg.h
> index d603d353..101426ff 100644
> --- a/c_headers/stdarg.h
> +++ b/c_headers/stdarg.h
> @@ -26,14 +26,10 @@
>  #ifndef __STDARG_H
>  #define __STDARG_H
>  
> -/* zig: added because macos _va_list.h was duplicately defining va_list
> - */
>  #ifndef _VA_LIST
> -#ifndef _VA_LIST_T
>  typedef __builtin_va_list va_list;
>  #define _VA_LIST
>  #endif
> -#endif
>  #define va_start(ap, param) __builtin_va_start(ap, param)
>  #define va_end(ap)          __builtin_va_end(ap)
>  #define va_arg(ap, type)    __builtin_va_arg(ap, type)
> @@ -50,9 +46,6 @@ typedef __builtin_va_list va_list;
>  #ifndef __GNUC_VA_LIST
>  #define __GNUC_VA_LIST 1
>  typedef __builtin_va_list __gnuc_va_list;
> -/* zig: added because glibc stdio.h was duplicately defining va_list
> - */
> -#define _VA_LIST_DEFINED
>  #endif
>  
>  #endif /* __STDARG_H */
> diff --git a/c_headers/stddef.h b/c_headers/stddef.h
> index 3b55d42c..73549967 100644
> --- a/c_headers/stddef.h
> +++ b/c_headers/stddef.h
> @@ -48,13 +48,7 @@
>  #if !__has_feature(modules)
>  #define _PTRDIFF_T
>  #endif
> -
> -/* Zig: wrap in _PTRDIFF_T_DEFINED to protect against mingw defining it twice */
> -#if !defined(_PTRDIFF_T_DEFINED)
>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
> -#define _PTRDIFF_T_DEFINED
> -#endif
> -
>  #endif
>  #undef __need_ptrdiff_t
>  #endif /* defined(__need_ptrdiff_t) */
> @@ -65,24 +59,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>  #if !__has_feature(modules)
>  #define _SIZE_T
>  #endif
> -
> -/* Zig: added to avoid collisions with mingw */
> -#if !defined(_SIZE_T_DEFINED_)
> -#if !defined(_SIZE_T_DEFINED)
> -#if !defined(_BSD_SIZE_T_DEFINED_)
> -#if !defined(_SIZE_T_DECLARED)
>  typedef __SIZE_TYPE__ size_t;
> -#define _SIZE_T_DEFINED_
> -#define _SIZE_T_DEFINED
> -#define _BSD_SIZE_T_DEFINED_
> -#define _SIZE_T_DECLARED
> -#endif
> -#endif
> -#endif
> -#endif
> -
> -
> -
>  #endif
>  #undef __need_size_t
>  #endif /*defined(__need_size_t) */
> @@ -110,22 +87,7 @@ typedef __SIZE_TYPE__ rsize_t;
>  #define _WCHAR_T_DEFINED
>  #endif
>  #endif
> -
> -/* zig added to prevent duplicate definition with mingw */
> -#if !defined(__INT_WCHAR_T_H)
> -#if !defined(_GCC_WCHAR_T)
> -#if !defined(_WCHAR_T_DECLARED)
> -#if !defined(_WCHAR_T_DEFINED)
> -#define __INT_WCHAR_T_H
> -#define _GCC_WCHAR_T
> -#define _WCHAR_T_DECLARED
> -#define _WCHAR_T_DEFINED
>  typedef __WCHAR_TYPE__ wchar_t;
> -#endif
> -#endif
> -#endif
> -#endif
> -
>  #endif
>  #endif
>  #undef __need_wchar_t
>
>
>
>
>
> On Fri, Dec 1, 2017 at 10:30 AM, Sylvestre Ledru via llvm-dev <[hidden email] <mailto:[hidden email]>> wrote:
>
>     On 30/11/2017 01:19, Tom Stellard via Release-testers wrote:
>     > Hi,
>     >
>     > I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
>     > your results.
>     Besides an intermittent issue with mips64el (not a recent regression), looks great!
>     Thanks
>     S
>
>     _______________________________________________
>     LLVM Developers mailing list
>     [hidden email] <mailto:[hidden email]>
>     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>
>
>

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev


On Mon, Dec 4, 2017 at 9:59 AM, Tom Stellard <[hidden email]> wrote:
On 12/01/2017 10:47 AM, Andrew Kelley wrote:
> Zig tests using Debug build of 5.0.1rc2 hit this bug: https://bugs.llvm.org/show_bug.cgi?id=34452 <https://bugs.llvm.org/show_bug.cgi?id=34452>
> I suppose the fix has not been backported to 5.0.1.
>


At this point in the release process, we usually only accept critical fixes
or fixes for regressions.

That's fair; I'm content to wait for llvm 6 for this patch. Currently, zig officially depends on a non-assertions-enabled build of LLVM 5 due to this bug, but we will support LLVM assertions when 6 is released.
 

I'm not familiar with Zig tests, can you give me a little more information
about these tests and how these failures will impact users.

Zig is a frontend to LLVM just like clang. The tests do a reasonably thorough job of testing the LLVM API, libclang API, and LLD test cases that the zig compiler depends on. There are no new regressions since 5.0.0, so users will continue to use zig like normal after 5.0.1 is released.
 

Also are these 4 lld patches backports from trunk?  If so, which revsions are they?

2 of them are from trunk.

rL311734: Fix the ASM code generated for __stub_helpers section
rL316370: COFF: better behavior when using as a library

2 of them are not:
 * workaround for buggy MACH-O code: This is not a high enough quality patch to go into trunk; when someone on the zig team has time we will do a better fix for the root cause and send the patch upstream. No one on the LLD team has had motivation to fix this bug, which is https://bugs.llvm.org/show_bug.cgi?id=32254
 * Fix for LLD on linker scripts with empty sections: The bug this fixes is not present in trunk, and this patch will be removed when llvm 6 is released.

I'll send the c header patches upstream separately.
 

Thanks,
Tom

> So I created a Release build of 5.0.1rc2 and all zig tests pass, with the following patches:
>
> * Patches to LLD:
>
> commit a206ef34bbbc46017e471063a4a1832c1ddafb0a
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:11:55 2017 -0500
>
>     LLD patch: Fix the ASM code generated for __stub_helpers section
>
>     This applies 93ca847862af07632197dcf2d8a68b9b27a26d7a
>     from the llvm-project git monorepo to the embedded LLD.
>
> commit ddca67a2b94f68985789fc8254fd1326e26269f6
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:09:55 2017 -0500
>
>     LLD patch: workaround for buggy MACH-O code
>
>     This reapplies 1a1414fc42c7beb25b6de4134d99884ea6544b57
>     to the embedded LLD.
> diff --git a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> index d687ca5d..07958da4 100644
> --- a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> +++ b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
> @@ -617,7 +617,6 @@ void ArchHandler_x86_64::applyFixupFinal(
>      // Fall into llvm_unreachable().
>      break;
>    }
> -  llvm_unreachable("invalid x86_64 Reference Kind");
>  }
>
>  void ArchHandler_x86_64::applyFixupRelocatable(const Reference &ref,
>
>
> commit fa45407e78c7a20281bf063f659d74f86c127ea1
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:08:16 2017 -0500
>
>     LLD patch: Fix for LLD on linker scripts with empty sections
>
>     This reapplies 569cf286ff79a10126b9f20f39fa8c64df9b8b25
>     to the embedded LLD.
> diff --git a/deps/lld/ELF/LinkerScript.cpp b/deps/lld/ELF/LinkerScript.cpp
> index 8bdbd8db..614f5e2c 100644
> --- a/deps/lld/ELF/LinkerScript.cpp
> +++ b/deps/lld/ELF/LinkerScript.cpp
> @@ -751,7 +751,7 @@ void LinkerScript::adjustSectionsAfterSorting() {
>      if (auto *Cmd = dyn_cast<OutputSectionCommand>(Base)) {
>        Cmd->MemRegion = findMemoryRegion(Cmd);
>        // Handle align (e.g. ".foo : ALIGN(16) { ... }").
> -      if (Cmd->AlignExpr)
> +      if (Cmd->AlignExpr && Cmd->Sec)
>          Cmd->Sec->updateAlignment(Cmd->AlignExpr().getValue());
>      }
>    }
>
>
> commit 9ea23272fac7f4580d29f7ee557108883f127a5d
> Author: Andrew Kelley <[hidden email] <mailto:[hidden email]>>
> Date:   Fri Dec 1 12:06:33 2017 -0500
>
>     LLD patch: COFF: better behavior when using as a library
>
>     This applies de776439b61fb71c1256ad86238799c758c66048
>     from the LLVM git monorepo to the embedded LLD.
>
>
>
> * Patches to clang headers:
>
> diff --git a/c_headers/stdarg.h b/c_headers/stdarg.h
> index d603d353..101426ff 100644
> --- a/c_headers/stdarg.h
> +++ b/c_headers/stdarg.h
> @@ -26,14 +26,10 @@
>  #ifndef __STDARG_H
>  #define __STDARG_H
>
> -/* zig: added because macos _va_list.h was duplicately defining va_list
> - */
>  #ifndef _VA_LIST
> -#ifndef _VA_LIST_T
>  typedef __builtin_va_list va_list;
>  #define _VA_LIST
>  #endif
> -#endif
>  #define va_start(ap, param) __builtin_va_start(ap, param)
>  #define va_end(ap)          __builtin_va_end(ap)
>  #define va_arg(ap, type)    __builtin_va_arg(ap, type)
> @@ -50,9 +46,6 @@ typedef __builtin_va_list va_list;
>  #ifndef __GNUC_VA_LIST
>  #define __GNUC_VA_LIST 1
>  typedef __builtin_va_list __gnuc_va_list;
> -/* zig: added because glibc stdio.h was duplicately defining va_list
> - */
> -#define _VA_LIST_DEFINED
>  #endif
>
>  #endif /* __STDARG_H */
> diff --git a/c_headers/stddef.h b/c_headers/stddef.h
> index 3b55d42c..73549967 100644
> --- a/c_headers/stddef.h
> +++ b/c_headers/stddef.h
> @@ -48,13 +48,7 @@
>  #if !__has_feature(modules)
>  #define _PTRDIFF_T
>  #endif
> -
> -/* Zig: wrap in _PTRDIFF_T_DEFINED to protect against mingw defining it twice */
> -#if !defined(_PTRDIFF_T_DEFINED)
>  typedef __PTRDIFF_TYPE__ ptrdiff_t;
> -#define _PTRDIFF_T_DEFINED
> -#endif
> -
>  #endif
>  #undef __need_ptrdiff_t
>  #endif /* defined(__need_ptrdiff_t) */
> @@ -65,24 +59,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>  #if !__has_feature(modules)
>  #define _SIZE_T
>  #endif
> -
> -/* Zig: added to avoid collisions with mingw */
> -#if !defined(_SIZE_T_DEFINED_)
> -#if !defined(_SIZE_T_DEFINED)
> -#if !defined(_BSD_SIZE_T_DEFINED_)
> -#if !defined(_SIZE_T_DECLARED)
>  typedef __SIZE_TYPE__ size_t;
> -#define _SIZE_T_DEFINED_
> -#define _SIZE_T_DEFINED
> -#define _BSD_SIZE_T_DEFINED_
> -#define _SIZE_T_DECLARED
> -#endif
> -#endif
> -#endif
> -#endif
> -
> -
> -
>  #endif
>  #undef __need_size_t
>  #endif /*defined(__need_size_t) */
> @@ -110,22 +87,7 @@ typedef __SIZE_TYPE__ rsize_t;
>  #define _WCHAR_T_DEFINED
>  #endif
>  #endif
> -
> -/* zig added to prevent duplicate definition with mingw */
> -#if !defined(__INT_WCHAR_T_H)
> -#if !defined(_GCC_WCHAR_T)
> -#if !defined(_WCHAR_T_DECLARED)
> -#if !defined(_WCHAR_T_DEFINED)
> -#define __INT_WCHAR_T_H
> -#define _GCC_WCHAR_T
> -#define _WCHAR_T_DECLARED
> -#define _WCHAR_T_DEFINED
>  typedef __WCHAR_TYPE__ wchar_t;
> -#endif
> -#endif
> -#endif
> -#endif
> -
>  #endif
>  #endif
>  #undef __need_wchar_t
>
>
>
>
>
> On Fri, Dec 1, 2017 at 10:30 AM, Sylvestre Ledru via llvm-dev <[hidden email] <mailto:[hidden email]>> wrote:
>
>     On 30/11/2017 01:19, Tom Stellard via Release-testers wrote:
>     > Hi,
>     >
>     > I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
>     > your results.
>     Besides an intermittent issue with mips64el (not a recent regression), looks great!
>     Thanks
>     S
>
>     _______________________________________________
>     LLVM Developers mailing list
>     [hidden email] <mailto:[hidden email]>
>     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>
>
>



_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
Tom Stellard via cfe-dev wrote:

> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
> your results.

Hi,

Any idea when the release will land?

Thanks,
R.

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
On 12/05/2017 02:33 AM, René J. V. Bertin via cfe-dev wrote:
> Tom Stellard via cfe-dev wrote:
>
>> I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
>> your results.
>
> Hi,
>
> Any idea when the release will land?
>

5.0.1-rc3 is planned for Thursday, and I'm hoping this is the last release
candidate.  If all goes well final release will happen in around 2 weeks.

-Tom

> Thanks,
> R.
>
> _______________________________________________
> cfe-dev mailing list
> [hidden email]
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: [llvm-dev] [Release-testers] 5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev
On 12/04/2017 10:00 AM, Andrew Kelley wrote:
>
>
> On Mon, Dec 4, 2017 at 9:59 AM, Tom Stellard <[hidden email] <mailto:[hidden email]>> wrote:
>
>     On 12/01/2017 10:47 AM, Andrew Kelley wrote:
>     > Zig tests using Debug build of 5.0.1rc2 hit this bug: https://bugs.llvm.org/show_bug.cgi?id=34452 <https://bugs.llvm.org/show_bug.cgi?id=34452> <https://bugs.llvm.org/show_bug.cgi?id=34452 <https://bugs.llvm.org/show_bug.cgi?id=34452>>
>     > I suppose the fix has not been backported to 5.0.1.
>     >
>

I've created a merge request for this one: https://bugs.llvm.org/show_bug.cgi?id=35537
to get feedback from Daniel on how important this fixes is, but I'm not going to
block -rc3 (scheduled for Thursday) waiting for feedback on this bug.

>
>     At this point in the release process, we usually only accept critical fixes
>     or fixes for regressions.
>
>
> That's fair; I'm content to wait for llvm 6 for this patch. Currently, zig officially depends on a non-assertions-enabled build of LLVM 5 due to this bug, but we will support LLVM assertions when 6 is released.
>  
>
>
>     I'm not familiar with Zig tests, can you give me a little more information
>     about these tests and how these failures will impact users.
>
>
> Zig is a frontend to LLVM just like clang. The tests do a reasonably thorough job of testing the LLVM API, libclang API, and LLD test cases that the zig compiler depends on. There are no new regressions since 5.0.0, so users will continue to use zig like normal after 5.0.1 is released.
>  
>
>
>     Also are these 4 lld patches backports from trunk?  If so, which revsions are they?
>
>
> 2 of them are from trunk.
>
> rL311734: Fix the ASM code generated for __stub_helpers section

This one was approved to merge, but I missed it for -rc2, so I will merge
it for -rc3.

> rL316370: COFF: better behavior when using as a library
>

This isn't critical enough for -rc3.

> 2 of them are not:
>  * workaround for buggy MACH-O code: This is not a high enough quality patch to go into trunk; when someone on the zig team has time we will do a better fix for the root cause and send the patch upstream. No one on the LLD team has had motivation to fix this bug, which is https://bugs.llvm.org/show_bug.cgi?id=32254
>  * Fix for LLD on linker scripts with empty sections: The bug this fixes is not present in trunk, and this patch will be removed when llvm 6 is released.
>

We can't take patches that aren't upstream yet.

-Tom

> I'll send the c header patches upstream separately.
>  
>
>
>     Thanks,
>     Tom
>
>     > So I created a Release build of 5.0.1rc2 and all zig tests pass, with the following patches:
>     >
>     > * Patches to LLD:
>     >
>     > commit a206ef34bbbc46017e471063a4a1832c1ddafb0a
>     > Author: Andrew Kelley <[hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>>
>     > Date:   Fri Dec 1 12:11:55 2017 -0500
>     >
>     >     LLD patch: Fix the ASM code generated for __stub_helpers section
>     >
>     >     This applies 93ca847862af07632197dcf2d8a68b9b27a26d7a
>     >     from the llvm-project git monorepo to the embedded LLD.
>     >
>     > commit ddca67a2b94f68985789fc8254fd1326e26269f6
>     > Author: Andrew Kelley <[hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>>
>     > Date:   Fri Dec 1 12:09:55 2017 -0500
>     >
>     >     LLD patch: workaround for buggy MACH-O code
>     >
>     >     This reapplies 1a1414fc42c7beb25b6de4134d99884ea6544b57
>     >     to the embedded LLD.
>     > diff --git a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
>     > index d687ca5d..07958da4 100644
>     > --- a/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
>     > +++ b/deps/lld/lib/ReaderWriter/MachO/ArchHandler_x86_64.cpp
>     > @@ -617,7 +617,6 @@ void ArchHandler_x86_64::applyFixupFinal(
>     >      // Fall into llvm_unreachable().
>     >      break;
>     >    }
>     > -  llvm_unreachable("invalid x86_64 Reference Kind");
>     >  }
>     >
>     >  void ArchHandler_x86_64::applyFixupRelocatable(const Reference &ref,
>     >
>     >
>     > commit fa45407e78c7a20281bf063f659d74f86c127ea1
>     > Author: Andrew Kelley <[hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>>
>     > Date:   Fri Dec 1 12:08:16 2017 -0500
>     >
>     >     LLD patch: Fix for LLD on linker scripts with empty sections
>     >
>     >     This reapplies 569cf286ff79a10126b9f20f39fa8c64df9b8b25
>     >     to the embedded LLD.
>     > diff --git a/deps/lld/ELF/LinkerScript.cpp b/deps/lld/ELF/LinkerScript.cpp
>     > index 8bdbd8db..614f5e2c 100644
>     > --- a/deps/lld/ELF/LinkerScript.cpp
>     > +++ b/deps/lld/ELF/LinkerScript.cpp
>     > @@ -751,7 +751,7 @@ void LinkerScript::adjustSectionsAfterSorting() {
>     >      if (auto *Cmd = dyn_cast<OutputSectionCommand>(Base)) {
>     >        Cmd->MemRegion = findMemoryRegion(Cmd);
>     >        // Handle align (e.g. ".foo : ALIGN(16) { ... }").
>     > -      if (Cmd->AlignExpr)
>     > +      if (Cmd->AlignExpr && Cmd->Sec)
>     >          Cmd->Sec->updateAlignment(Cmd->AlignExpr().getValue());
>     >      }
>     >    }
>     >
>     >
>     > commit 9ea23272fac7f4580d29f7ee557108883f127a5d
>     > Author: Andrew Kelley <[hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>>
>     > Date:   Fri Dec 1 12:06:33 2017 -0500
>     >
>     >     LLD patch: COFF: better behavior when using as a library
>     >
>     >     This applies de776439b61fb71c1256ad86238799c758c66048
>     >     from the LLVM git monorepo to the embedded LLD.
>     >
>     >
>     >
>     > * Patches to clang headers:
>     >
>     > diff --git a/c_headers/stdarg.h b/c_headers/stdarg.h
>     > index d603d353..101426ff 100644
>     > --- a/c_headers/stdarg.h
>     > +++ b/c_headers/stdarg.h
>     > @@ -26,14 +26,10 @@
>     >  #ifndef __STDARG_H
>     >  #define __STDARG_H
>     >
>     > -/* zig: added because macos _va_list.h was duplicately defining va_list
>     > - */
>     >  #ifndef _VA_LIST
>     > -#ifndef _VA_LIST_T
>     >  typedef __builtin_va_list va_list;
>     >  #define _VA_LIST
>     >  #endif
>     > -#endif
>     >  #define va_start(ap, param) __builtin_va_start(ap, param)
>     >  #define va_end(ap)          __builtin_va_end(ap)
>     >  #define va_arg(ap, type)    __builtin_va_arg(ap, type)
>     > @@ -50,9 +46,6 @@ typedef __builtin_va_list va_list;
>     >  #ifndef __GNUC_VA_LIST
>     >  #define __GNUC_VA_LIST 1
>     >  typedef __builtin_va_list __gnuc_va_list;
>     > -/* zig: added because glibc stdio.h was duplicately defining va_list
>     > - */
>     > -#define _VA_LIST_DEFINED
>     >  #endif
>     >
>     >  #endif /* __STDARG_H */
>     > diff --git a/c_headers/stddef.h b/c_headers/stddef.h
>     > index 3b55d42c..73549967 100644
>     > --- a/c_headers/stddef.h
>     > +++ b/c_headers/stddef.h
>     > @@ -48,13 +48,7 @@
>     >  #if !__has_feature(modules)
>     >  #define _PTRDIFF_T
>     >  #endif
>     > -
>     > -/* Zig: wrap in _PTRDIFF_T_DEFINED to protect against mingw defining it twice */
>     > -#if !defined(_PTRDIFF_T_DEFINED)
>     >  typedef __PTRDIFF_TYPE__ ptrdiff_t;
>     > -#define _PTRDIFF_T_DEFINED
>     > -#endif
>     > -
>     >  #endif
>     >  #undef __need_ptrdiff_t
>     >  #endif /* defined(__need_ptrdiff_t) */
>     > @@ -65,24 +59,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
>     >  #if !__has_feature(modules)
>     >  #define _SIZE_T
>     >  #endif
>     > -
>     > -/* Zig: added to avoid collisions with mingw */
>     > -#if !defined(_SIZE_T_DEFINED_)
>     > -#if !defined(_SIZE_T_DEFINED)
>     > -#if !defined(_BSD_SIZE_T_DEFINED_)
>     > -#if !defined(_SIZE_T_DECLARED)
>     >  typedef __SIZE_TYPE__ size_t;
>     > -#define _SIZE_T_DEFINED_
>     > -#define _SIZE_T_DEFINED
>     > -#define _BSD_SIZE_T_DEFINED_
>     > -#define _SIZE_T_DECLARED
>     > -#endif
>     > -#endif
>     > -#endif
>     > -#endif
>     > -
>     > -
>     > -
>     >  #endif
>     >  #undef __need_size_t
>     >  #endif /*defined(__need_size_t) */
>     > @@ -110,22 +87,7 @@ typedef __SIZE_TYPE__ rsize_t;
>     >  #define _WCHAR_T_DEFINED
>     >  #endif
>     >  #endif
>     > -
>     > -/* zig added to prevent duplicate definition with mingw */
>     > -#if !defined(__INT_WCHAR_T_H)
>     > -#if !defined(_GCC_WCHAR_T)
>     > -#if !defined(_WCHAR_T_DECLARED)
>     > -#if !defined(_WCHAR_T_DEFINED)
>     > -#define __INT_WCHAR_T_H
>     > -#define _GCC_WCHAR_T
>     > -#define _WCHAR_T_DECLARED
>     > -#define _WCHAR_T_DEFINED
>     >  typedef __WCHAR_TYPE__ wchar_t;
>     > -#endif
>     > -#endif
>     > -#endif
>     > -#endif
>     > -
>     >  #endif
>     >  #endif
>     >  #undef __need_wchar_t
>     >
>     >
>     >
>     >
>     >
>     > On Fri, Dec 1, 2017 at 10:30 AM, Sylvestre Ledru via llvm-dev <[hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>> wrote:
>     >
>     >     On 30/11/2017 01:19, Tom Stellard via Release-testers wrote:
>     >     > Hi,
>     >     >
>     >     > I've tagged the 5.0.1-rc2 release, go ahead and start testing and report
>     >     > your results.
>     >     Besides an intermittent issue with mips64el (not a recent regression), looks great!
>     >     Thanks
>     >     S
>     >
>     >     _______________________________________________
>     >     LLVM Developers mailing list
>     >     [hidden email] <mailto:[hidden email]> <mailto:[hidden email] <mailto:[hidden email]>>
>     >     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev> <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>>
>     >
>     >
>
>

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

5.0.1-rc2 has been tagged

Robinson, Paul via cfe-dev
In reply to this post by Robinson, Paul via cfe-dev

Hi,

Tested and it looks ok here. Binaries uploaded.

SHA256(clang+llvm-5.0.1-rc2-mipsel-linux-gnu.tar.xz)= 32e5f74e3fdbd4cd9620555c0f3589231e9e7c0bb06f516a43ab4ba97194b4ec
SHA256(clang+llvm-5.0.1-rc2-mips-linux-gnu.tar.xz)= 410ffa2bce385b0cbd61f7e43f397c19f55413d34958dfe2b0c8a37f5d639bf0
SHA256(clang+llvm-5.0.1-rc2-x86_64-linux-gnu-debian8.tar.xz)= d12ef6a1f022f8cf9d4f95bee3a67c719fb0868a4bf0f31b082f75a24dd195b9

Thanks,
Simon
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev