[LLVMdev] Proposed patches for Clang 3.5.1

Tom Stellard tom at stellard.net
Fri Nov 28 17:48:22 PST 2014


On Wed, Nov 26, 2014 at 07:44:20PM +0100, Dimitry Andric wrote:
> On 26 Nov 2014, at 16:50, Tom Stellard <tom at stellard.net> wrote:
> > 
> > On Wed, Nov 26, 2014 at 10:15:13AM +0000, Daniel Sanders wrote:
> ...
> > I will try to look at the patches today.  I'm going to delay the release a week
> > or so, because of all the merge requests I've received, so there is no rush.
> 
> Hi Tom,
> 
> I would like to propose the following additional patches for 3.5.1.  These will already be part of the upcoming clang 3.5.0 import into the FreeBSD 11.0 base system.  Apologies in advance for the long list. :)
> 

Hi Dimitry,

Can you cc the appropriate code owners to get their approval.  It might
help to send a separate email per code owner.

Thanks,
Tom

> 
> Enabling TLS support for PowerPC32:
> 
>   http://llvm.org/viewvc/llvm-project?rev=213960&view=rev
> 
>     [PowerPC] Support TLS on PPC32/ELF
> 
>     Patch by Justin Hibbits!
> 
> 
> Two changes needed for being able to link lldb 3.5.x against llvm 3.5.x:
> 
>   http://llvm.org/viewvc/llvm-project?rev=215352&view=rev
> 
>     AArch64: add support for dynamic-loader relocations
> 
>     LLD needs them, and it's good to be able to print them properly when
>     our object dumpers encounter them.
> 
>     Patch by Daniel Stewart.
> 
>   http://llvm.org/viewvc/llvm-project?rev=216571&view=rev
> 
>     Fix some semantic usability issues with DynamicLibrary.
> 
>     This patch allows invalid DynamicLibrary instances to be
>     constructed, and fixes the const-correctness of the isValid()
>     method.
> 
> 
> Fixing a possible SIGILL problem on ARMv6 and lower, plus test:
> 
>   http://llvm.org/viewvc/llvm-project?rev=216989&view=rev
> 
>     Only emit movw on ARMv6T2+
> 
>     Fix PR18364.
> 
>     Patch by Dimitry Andric.
> 
>   http://llvm.org/viewvc/llvm-project?rev=216990&view=rev
> 
>     Missing test from r216989
> 
> 
> Fix assigning garbage to floats in some cases:
> 
>   http://llvm.org/viewvc/llvm-project?rev=217410&view=rev
> 
>     Set trunc store action to Expand for all X86 targets.
> 
>     When compiling without SSE2, isTruncStoreLegal(F64, F32) would return Legal, whereas with SSE2 it would return Expand. And since the Target doesn't seem to actually handle a truncstore for double -> float, it would just output a store of a full double in the space for a float hence overwriting other bits on the stack.
> 
>     Patch by Luqman Aden!
> 
> 
> Enabling armv6k for FreeBSD/ARM:
> 
>   http://llvm.org/viewvc/llvm-project?rev=217454&view=rev
> 
>     Use armv6k default for FreeBSD/ARM
> 
>     Patch by Andrew Turner.
> 
> 
> Downgrading a DWARF2 section error when .note sections are added to a .S file while debug info is on:
> 
>   http://llvm.org/viewvc/llvm-project?rev=218241&view=rev
> 
>     Downgrade DWARF2 section limit error to a warning
> 
>     We currently emit an error when trying to assemble a file with more
>     than one section using DWARF2 debug info. This should be a warning
>     instead, as the resulting file will still be usable, but with a
>     degraded debug illusion.
> 
> 
> Fixing a very bad OOM condition when compiling certain programs with debug info on, plus test:
> 
>   http://llvm.org/viewvc/llvm-project?rev=221709&view=rev
> 
>     Totally forget deallocated SDNodes in SDDbgInfo.
> 
>     What would happen before that commit is that the SDDbgValues associated with
>     a deallocated SDNode would be marked Invalidated, but SDDbgInfo would keep
>     a map entry keyed by the SDNode pointer pointing to this list of invalidated
>     SDDbgNodes. As the memory gets reused, the list might get wrongly associated
>     with another new SDNode. As the SDDbgValues are cloned when they are transfered,
>     this can lead to an exponential number of SDDbgValues being produced during
>     DAGCombine like in http://llvm.org/bugs/show_bug.cgi?id=20893
> 
>     Note that the previous behavior wasn't really buggy as the invalidation made
>     sure that the SDDbgValues won't be used. This commit can be considered a
>     memory optimization and as such is really hard to validate in a unit-test.
> 
>   http://llvm.org/viewvc/llvm-project?rev=221854&view=rev
> 
>     Add an assert and a test that verify r221709's fix.
> 
> 
> Enable AArch64 support for FreeBSD:
> 
>   http://llvm.org/viewvc/llvm-project?rev=221900&view=rev
> 
>     Hook up FreeBSD AArch64 support
> 
>     Patch from Andrew Turner.
> 
> 
> Partially fix FreeBSD boot2 size optimization regressions:
> 
>   http://llvm.org/viewvc/llvm-project?rev=222562&view=rev
> 
>     Disable header duplication at -Oz in loop-rotate pass.
> 
> 
> -Dimitry
> 





More information about the llvm-dev mailing list