about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2020-07-22Revert "std: Switch from libbacktrace to gimli"Mark Rousskov-38/+26
This reverts commit 13db3cc1e8d2fd4b8e7c74d91002274d7b62801b.
2020-07-22Revert "std: Fix compilation without backtrace feature"Mark Rousskov-1/+2
This reverts commit 028f8d7b85898683b99e05564cd2976c7e0d5b43.
2020-07-22Revert "update backtrace-rs"Mark Rousskov-0/+0
This reverts commit 4cbd265c119cb1a5eb92e98d2bb93466f05efa46.
2020-07-22Enable perf try builderMark Rousskov-3/+4
This adds a dedicated branch for perf to use for CI, intended to allow perf to enqueue builds without needing to use bors. bors is great, but bors requires an open PR to work, and we want to invoke perf on closed PRs sometimes (in particular, rollups).
2020-07-22note LLVM in fixmeBastian Kauschke-1/+1
2020-07-22Optimize away BitAnd and BitOr when possibleXavier Denis-24/+187
2020-07-22ci: disable Azure Pipelines except for macOSPietro Albini-298/+3
2020-07-22const prop into operandsBastian Kauschke-89/+261
2020-07-22Auto merge of #73270 - dylanmckay:avr-use-correct-addrspace, r=nagisabors-36/+188
[AVR] Correctly set the pointer address space when constructing pointers to functions NOTE: Pull request iterations: * https://github.com/dylanmckay/rust/releases/tag/avr-use-correct-addrspace.0 * https://github.com/dylanmckay/rust/releases/tag/avr-use-correct-addrspace.1 * https://github.com/dylanmckay/rust/releases/tag/avr-use-correct-addrspace.2 This patch extends the existing `type_i8p` method so that it requires an explicit address space to be specified. Before this patch, the `type_i8p` method implcitily assumed the default address space, which is not a safe transformation on all targets, namely AVR. The Rust compiler already has support for tracking the "instruction address space" on a per-target basis. This patch extends the code generation routines so that an address space must always be specified. In my estimation, around 15% of the callers of `type_i8p` produced invalid code on AVR due to the loss of address space prior to LLVM final code generation. This would lead to unavoidable assertion errors relating to invalid bitcasts. With this patch, the address space is always either 1) explicitly preserved from the input type, or 2) explicitly set to the instruction address space because the logic is dealing with functions which must be placed there, or 3) explicitly set to the default address space 0 because the logic can only operate on data space pointers and thus we keep the existing semantics of assuming the default, "data" address space.
2020-07-22mark methods as constant since 1.47.0 instead of 1.46.0Trevor Spiteri-81/+43
2020-07-22Do not ICE on assoc type with bad placeholderYuki Okushi-7/+21
2020-07-22Fix rebase falloutAaron Hill-9/+15
2020-07-22Skip computing param_env and size if not neededAaron Hill-1/+0
2020-07-22Erase regions in try_eval_bitsAaron Hill-0/+1
2020-07-22Normalize opaque types when converting `ParamEnv` to `Reveal::All`Aaron Hill-82/+139
Fixes #65918
2020-07-22Auto merge of #74578 - ehuss:fix-rust-src, r=Mark-Simulacrumbors-1/+1
Fix rust-src component. The rust-src component could not be installed by rustup because it included some symbolic links. #74520 added the backtrace directory which included some symlinks. Since the rust-src component doesn't need most of the files in the `backtrace` submodule, this changes it to only include the minimum necessary. Tested with cargo's build-std that it can build from the resulting tarball. Fixes #74577
2020-07-21Revert "Compare tagged/niche-filling layout and pick the best one"Mark Rousskov-51/+7
2020-07-21Auto merge of #74565 - pietroalbini:build-on-gha, r=Mark-Simulacrumbors-7/+34
Upload builds from GHA instead of Azure Pipelines This PR does two things: * Enables RLA comments on PRs (needed after the switch to GHA in RLA). * Switches GitHub Actions as the CI authorized to upload non-macOS builds. Note that Docker/LLVM caches will likely be busted. r? @Mark-Simulacrum
2020-07-21Remove Linux workarounds for missing CLOEXEC supportJosh Stone-187/+58
Now that #74163 updated the minimum Linux kernel to 2.6.32, we can assume the availability of APIs that open file descriptors that are already set to close on exec, including the flags `O_CLOEXEC`, `SOCK_CLOEXEC`, and `F_DUPFD_CLOEXEC`.
2020-07-21fetch -> lookupBastian Kauschke-7/+10
2020-07-21`try_update` -> `try_upgrade`Bastian Kauschke-5/+5
2020-07-21remove some const arg in ty dep path boilerplateBastian Kauschke-54/+57
2020-07-21Fix sync_once_cell_does_not_leak_partially_constructed_boxesMohsen Zohrevandi-0/+2
Spinning multiple threads in this test causes a deadlock in SGX where thread scheduling is not preemptive.
2020-07-22[AVR] Ensure that function pointers stored within aggregates are annotated ↵Dylan McKay-13/+40
with the correct space Before this patch, a function pointer stored within an aggregate like a struct or an enum would always have the default address space `0`. This patch removes this assumption and instead, introspects the inner type being pointed at, storing the target address space in the PointeeInfo struct so that downstream users may query it.
2020-07-22[AVR] Correctly set the pointer address space when constructing pointers to ↵Dylan McKay-23/+148
functions This patch extends the existing `type_i8p` method so that it requires an explicit address space to be specified. Before this patch, the `type_i8p` method implcitily assumed the default address space, which is not a safe transformation on all targets, namely AVR. The Rust compiler already has support for tracking the "instruction address space" on a per-target basis. This patch extends the code generation routines so that an address space must always be specified. In my estimation, around 15% of the callers of `type_i8p` produced invalid code on AVR due to the loss of address space prior to LLVM final code generation. This would lead to unavoidable assertion errors relating to invalid bitcasts. With this patch, the address space is always either 1) explicitly set to the instruction address space because the logic is dealing with functions which must be placed there, or 2) explicitly set to the default address space 0 because the logic can only operate on data space pointers and thus we keep the existing semantics of assuming the default, "data" address space.
2020-07-21Update booksEric Huss-0/+0
2020-07-21Remove the assert on alignment check.Jamie Cunliffe-2/+1
Also the alignment should only be done on general register types as per the AAPCS so fixed that issue. Copyright (c) 2020, Arm Limited.
2020-07-21Auto merge of #74075 - sunfishcode:wasi-prelude-rawfd, r=alexcrichtonbors-1/+1
Add `RawFd` to WASI's `std::os::wasi::prelude`. Add `RawFd` to WASI's `std::os::wasi::prelude`, making it consistent with all other platforms which also have `AsRawFd`, `FromRawFd`, and `IntoRawFd` in their respective preludes.
2020-07-21Auto merge of #69749 - davidtwco:issue-46477-polymorphization, r=eddybbors-191/+2034
Polymorphization This PR implements an analysis to detect when functions could remain polymorphic during code generation. Fixes #46477 r? @eddyb cc @rust-lang/wg-mir-opt @nikomatsakis @pnkfelix
2020-07-20Fix rust-src component.Eric Huss-1/+1
2020-07-21Expand test to cover type_name and monomorphic useGary Guo-15/+77
2020-07-20Migrate rustc_depr uses to use deprecation attributeMark Rousskov-181/+138
This should not be a change in behavior.
2020-07-20rustc_depr no longer needs to be connected to stabilityMark Rousskov-16/+0
We can deprecate non-stable/unstable items.
2020-07-20Parse rustc_deprecated as deprecated attributeMark Rousskov-47/+57
2020-07-20Update dependencies that have knowledge about aarch64-apple-darwinJake Goulding-2/+2
2020-07-20Add the aarch64-apple-darwin targetJake Goulding-1/+35
This is a basic copy-paste-modify from the existing x86_64-apple-darwin target.
2020-07-20refactor and reword intra-doc link errorsAndy Russell-298/+290
This commit refactors intra-doc link error reporting to deduplicate code and decouple error construction from the type of error. This greatly improves flexibility at each error construction site, while reducing the complexity of the diagnostic creation. This commit also rewords the diagnostics for clarity and style: - Diagnostics should not end in periods. - It's unnecessary to say "ignoring it". Since this is a warning by default, it's already clear that the link is ignored.
2020-07-20update coherence docsBastian Kauschke-7/+7
2020-07-20reviewBastian Kauschke-1/+10
2020-07-20Rollup merge of #74561 - RalfJung:backtrace, r=alexcrichtonManish Goregaokar-0/+0
update backtrace-rs Hopefully fixes https://github.com/rust-lang/rust/issues/74484 r? @alexcrichton
2020-07-20Rollup merge of #74557 - jakubadamw:issue-74539, r=nagisaManish Goregaokar-1/+40
Fix an ICE on an invalid `binding @ ...` in a tuple struct pattern Fixes #74539.
2020-07-20Rollup merge of #74555 - GuillaumeGomez:important-traits-popup, r=ManishearthManish Goregaokar-0/+5
Improve "important traits" popup display on mobile I implemented what @XAMPPRocky suggested in the [internals thread topic](https://internals.rust-lang.org/t/feedback-on-important-traits-rustdoc-feature/12752/18). I can confirm it works nicely. r? @Manishearth @Manishearth: By the way: I realized that when you click on the "i", you have to click again to make the popup disappear. Do you want me to extend the popup removal to any click outside the popup?
2020-07-20Rollup merge of #74552 - fusion-engineering-forks:stabilize-tau, r=dtolnayManish Goregaokar-2/+2
Stabilize TAU constant. Closes #66770.
2020-07-20Rollup merge of #74546 - jethrogb:jb/duplicate-attribute-maybe_uninit_extra, ↵Manish Goregaokar-4/+1
r=kennytm Fix duplicate maybe_uninit_extra attribute Introduced in #72414
2020-07-20Rollup merge of #74522 - tmiasko:sanitizer-docs, r=nikomatsakisManish Goregaokar-4/+3
Update sanitizer docs * Document AddressSanitizer memory leak detection defaults. * Remove CC & CFLAGS from MemorySanitizer example - they are now unnecessary for pure Rust projects (backtrace-rs moved away from libbacktrace).
2020-07-20Rollup merge of #74505 - Cldfire:fix-search-focus, r=GuillaumeGomezManish Goregaokar-10/+0
Fix search input focus in ayu theme Closes #74496. Before: ![image](https://user-images.githubusercontent.com/13814214/87868463-d0c8fe80-c963-11ea-9003-aa578d869e98.png) After: ![image](https://user-images.githubusercontent.com/13814214/87868467-dc1c2a00-c963-11ea-89a8-1280f68ff9df.png)
2020-07-20Rollup merge of #74501 - lzutao:css_run_border, r=GuillaumeGomezManish Goregaokar-3/+3
Ayu theme: Use different background color for Run button Make it clearer that there is a button Run there. Demo in https://github.com/rust-lang/rust/pull/74501#issuecomment-660597377 .
2020-07-20Rollup merge of #74376 - lcnr:type-dependent-path-cleanup, r=eddybManish Goregaokar-1/+5
test caching opt_const_param_of on disc Followup to #74113, implements parts of #74360 Tried caching `opt_const_param_of` on disk and adding an early exit if `tcx.dep_kind(def_id) != DefKind::AnonConst`. Ended up causing a perf regression instead, so we just remove the FIXME and a short note to `opt_const_param_of`. r? @eddyb
2020-07-20Rollup merge of #74051 - yodaldevoid:issue_60814, r=nikomatsakisManish Goregaokar-0/+109
disallow non-static lifetimes in const generics Disallow non-static lifetimes in const generics in order to to patch over an ICE caused when we encounter a non-static lifetime in a const generic during borrow checking. This restriction may be relaxed in the future, but we need more discussion before then, and in the meantime we should still deal with this ICE. Fixes issue #60814
2020-07-20Rollup merge of #73323 - davidtwco:issue-73252-wfcheck-foreign-fn-decl, ↵Manish Goregaokar-52/+97
r=ecstatic-morse wf: check foreign fn decls for well-formedness Fixes #73252 and fixes #73253. This PR extends current well-formedness checking to apply to foreign function declarations, re-using the existing machinery for regular functions. In doing this, later parts of the compiler (such as the `improper_ctypes` lint) can rely on being operations not failing as a result of invalid code which would normally be caught earlier.