summary refs log tree commit diff
path: root/src/llvm
AgeCommit message (Collapse)AuthorLines
2017-11-15Emit debug info for trait object pointerTom Tromey-0/+0
Emit better debugging information for a trait object pointer. In particular, now: * The fields are explicitly represented in the DWARF; * DWARF for the vtable itself is emitted; and * The DWARF for the vtable's type has a DW_AT_containing_type which points to the concrete type for which the vtable was emitted. This is a small DWARF extension, that allows debuggers to determine the real type of the object to which a trait object points. I'll submit the gdb patch to take advantage of this new debuginfo once this lands. The vtable type is not currently complete -- it doesn't include members for the pointers it contains. This information was not needed for this feature. This addresses part 1 of #1563.
2017-11-12Update LLVM to fix miscompiles with -Copt-level=z on WindowsBjörn Steinbrink-0/+0
Fixes #45034
2017-11-06rustbuild: Re-enable ThinLTO for MIPSAlex Crichton-0/+0
Now that the upstream LLVM bug is now fixed this commit cherry-picks the commit onto our LLVM and then re-enables the ThinLTO paths for MIPS. Closes #45654
2017-10-11rustc: Update LLVM with a ThinLTO fixAlex Crichton-0/+0
This commit updates LLVM with a patch that's landed upstream to fix an assertion that was tripping when ThinLTO was activated. Unfortunately I wasn't able to get a reduced test case, but I've tested manually on the affected crates and the assertion is indeed fixed. Closes #45131
2017-10-05Faster compile times for release builds with llvm fixAndreas Jonson-0/+0
2017-07-18Fix LLVM assertion when a weak symbol is defined in global_asm.Vadzim Dambrouski-0/+0
This change will fix the issue from https://github.com/japaric/svd2rust/pull/130
2017-07-12[LLVM] Avoid losing the !nonnull attribute in SROAAriel Ben-Yehuda-0/+0
This still does not work on 32-bit archs because of an LLVM limitation, but this is only an optimization, so let's push it on 64-bit only for now. Fixes #37945
2017-07-06rustc: Implement stack probes for x86Alex Crichton-0/+0
This commit implements stack probes on x86/x86_64 using the freshly landed support upstream in LLVM. The purpose of stack probes here are to guarantee a segfault on stack overflow rather than having a chance of running over the guard page already present on all threads by accident. At this time there's no support for any other architecture because LLVM itself does not have support for other architectures.
2017-06-27Rebase LLVM on top of LLVM 4.0.1Ariel Ben-Yehuda-0/+0
Fixes #42893.
2017-06-21Update LLVM to fix unsigned multiplication overflowJames Duley-0/+0
check for some targets, notably ARMv6-M.
2017-06-19Update LLVM to pick StackColoring improvementAriel Ben-Yehuda-0/+0
Fixes #40883.
2017-06-19Backport fixes to LLVM 4.0 ARM codegen bugsAriel Ben-Yehuda-0/+0
So ARM had quite a few codegen bugs on LLVM 4.0 which are fixed on LLVM trunk. This backports 5 of them: r297871 - ARM: avoid clobbering register in v6 jump-table expansion. - fixes rust-lang/rust#42248 r294949 - [Thumb-1] TBB generation: spot redefinitions of index r295816 - [ARM] Fix constant islands pass. r300870 - [Thumb-1] Fix corner cases for compressed jump tables r302650 - [IfConversion] Add missing check in IfConversion/canFallThroughTo - unblocks rust-lang/rust#39409
2017-06-15Add a no-system-llvm compilecheck headerSimonas Kazlauskas-0/+0
2017-06-08Upgrade LLVMSimonas Kazlauskas-0/+0
Includes https://github.com/rust-lang/llvm/pull/80 Includes https://github.com/rust-lang/llvm/pull/79 Also adds tests and thus fixes #24194
2017-05-13LLVM: Add support for EABI-compliant libcalls on MSP430.Vadzim Dambrouski-0/+0
This change will allow rust code to have proper support for division and multiplication using libgcc libcalls.
2017-05-04Update llvm to pull in various backportsTim Neumann-0/+0
2017-04-27Update LLVM to fix incorrect codegen on MSP430.Vadzim Dambrouski-0/+0
The bug was reported by @akovaski here: https://github.com/rust-embedded/rfcs/issues/20#issuecomment-296482148
2017-04-26Cherry pick LLVM hexagon fixesMichael Wu-0/+0
2017-04-23FIN/LLVM: new rust patches required for 4.0Tim Neumann-0/+0
2017-04-23FIN/LLVM: adopt all applicable rust llvm patchesTim Neumann-0/+0
2017-04-23FIN: update to upstream (llvm 4.0.1 + fastcomp 1.37.10) & compiler-rt 4.0Tim Neumann-0/+0
2017-03-24update LLVM with fix for PR32379Ariel Ben-Yehuda-0/+0
Fixes #40593.
2017-03-19update LLVMAriel Ben-Yehuda-0/+0
pick up a fix to LLVM PR29151.
2017-03-10LLVM: Update submodule to include SRet support patch for MSP430.Vadzim Dambrouski-0/+0
2017-03-02LLVM: Update submodule to include x86-interrupt ABI patchesPhilipp Oppermann-0/+0
2016-12-16llvm: backport r280651Jorge Aparicio-0/+0
fixes #38406
2016-12-08LLVM: Update submodule to include patches for MSP430.Vadzim Dambrouski-0/+0
Fixes #37829
2016-12-01Update llvm fork to 3ec14daffb4b8c0604df50b7fb0ab552f456e381Anthony Ramine-0/+0
2016-10-29LLVM: Update submodule to rust-llvm-2016-10-29 branch.Vadzim Dambrouski-0/+0
2016-10-19LLVM: Add triple for FuchsiaRaph Levien-0/+0
Update subproject commit.
2016-10-10LLVM: Backport "[SimplifyCFG] Correctly test for unconditional branches in ↵Michael Woerister-0/+0
GetCaseResults"
2016-10-10Update LLVM to fix bug in SimplifyCFG pass.Michael Woerister-0/+0
2016-10-07llvm: Update LLVM to include fix for pathologic case in its LiveDebugValues ↵Michael Woerister-0/+0
pass.
2016-09-30Update LLVM with fastcomp patchesBrian Anderson-0/+0
2016-09-17Up the LLVMSimonas Kazlauskas-0/+0
Fixes #36474
2016-09-01Fix optimization regressions for operations on [x; n]-initialized arrays.Eduard Burtescu-0/+0
2016-08-29llvm: backport "[SimplifyCFG] Hoisting invalidates metadata".Eduard Burtescu-0/+0
2016-08-17Update LLVM to include 4 backported commits by @majnemer.Eduard Burtescu-0/+0
2016-08-10Improved checking of target's llvm_configCameron Hart-0/+0
Point llvm @bitshifter branch until PR accepted Use today's date for LLVM auto clean trigger Update LLVM submodule to point at rust-lang fork. Handle case when target is set
2016-08-06Merge branch 'master' into issue-30961Cameron Hart-0/+0
2016-08-01Upgrade LLVM once more to get a bugfixJan-Erik Rediger-0/+0
@tmiasko did some digging and discovered that https://reviews.llvm.org/D22858 may be relevant.
2016-07-29Update LLVM againJan-Erik Rediger-0/+0
2016-07-29[LLVM-3.9] Use llvm-3.9 branchJan-Erik Rediger-0/+0
2016-07-29rustc: Update LLVM to the LLVM 3.9 release branchAlex Crichton-0/+0
The 3.9 release of LLVM isn't out yet, but this moves us onto that branch to start tracking it.
2016-07-29Upgrade llvmJan-Erik Rediger-0/+0
2016-07-29Upgrade LLVM to include std::thread patchJan-Erik Rediger-0/+0
2016-07-29Upgrade to rust-llvm-2016-07-09Jan-Erik Rediger-0/+0
2016-07-19Hopefully this is the right llvm commit this time!Cameron Hart-0/+0
2016-07-11Add help for target CPUs, features, relocation and code models.Cameron Hart-0/+0
2016-07-08Update LLVM.Michael Woerister-0/+0