Commit Graph

2186 Commits

Author SHA1 Message Date
bjorn3
db8fa0edfa Inline codegen_mono_items and outline predefine_mono_items 2020-11-12 17:07:02 +01:00
bjorn3
0a4f37c1fa
Merge pull request #1111 from jakobhellermann/hardlinks-instead-of-copy
use hardlinks instead of copying files
2020-11-12 16:37:40 +01:00
Jakob Hellermann
7ab499fe49 use hardlinks instead of copying files 2020-11-12 16:18:03 +01:00
bjorn3
6eaa502049 Update Cranelift for SimpleJIT changes 2020-11-12 11:56:09 +01:00
bjorn3
96c4542dc3 Avoid muliplications by 1
```
Benchmark #1: ./raytracer_cg_clif_pre
  Time (mean ± σ):      9.553 s ±  0.129 s    [User: 9.543 s, System: 0.008 s]
  Range (min … max):    9.438 s …  9.837 s    10 runs

Benchmark #2: ./raytracer_cg_clif_post
  Time (mean ± σ):      9.463 s ±  0.055 s    [User: 9.452 s, System: 0.008 s]
  Range (min … max):    9.387 s …  9.518 s    10 runs

Summary
  './raytracer_cg_clif_post' ran
    1.01 ± 0.01 times faster than './raytracer_cg_clif_pre'
```
2020-11-12 11:09:58 +01:00
Nicholas-Baron
a5ec85758b Changed unwrap_or to unwrap_or_else in some places.
The discussion seems to have resolved that this lint is a bit "noisy" in
that applying it in all places would result in a reduction in
readability.

A few of the trivial functions (like `Path::new`) are fine to leave
outside of closures.

The general rule seems to be that anything that is obviously an
allocation (`Box`, `Vec`, `vec![]`) should be in a closure, even if it
is a 0-sized allocation.
2020-11-10 20:07:47 -08:00
Jonas Schievink
65ae469f8d Rollup merge of #78875 - petrochenkov:cleantarg, r=Mark-Simulacrum
rustc_target: Further cleanup use of target options

Follow up to https://github.com/rust-lang/rust/pull/77729.

Implements items 2 and 4 from the list in https://github.com/rust-lang/rust/pull/77729#issue-500228243.

The first commit collapses uses of `target.options.foo` into `target.foo`.

The second commit renames some target options to avoid tautology:
`target.target_endian` -> `target.endian`
`target.target_c_int_width` -> `target.c_int_width`
`target.target_os` -> `target.os`
`target.target_env` -> `target.env`
`target.target_vendor` -> `target.vendor`
`target.target_family` -> `target.os_family`
`target.target_mcount` -> `target.mcount`

r? `@Mark-Simulacrum`
2020-11-10 14:45:21 +01:00
bjorn3
4700926e54 Update dependencies 2020-11-09 18:43:54 +01:00
bjorn3
1a32c542ff Update Cranelift 2020-11-09 18:16:08 +01:00
Dylan DPC
806538fa78 Rollup merge of #78674 - tmiasko:inline-substs-for-mir-body, r=oli-obk
inliner: Use substs_for_mir_body

Changes from 68965 extended the kind of instances that are being
inlined. For some of those, the `instance_mir` returns a MIR body that
is already expressed in terms of the types found in substitution array,
and doesn't need further substitution.

Use `substs_for_mir_body` to take that into account.

Resolves #78529.
Resolves #78560.
2020-11-09 01:13:42 +01:00
bjorn3
cf3aa64c66 Better build dir layout
It now matches the layout used by rustc itself
2020-11-08 17:35:59 +01:00
bjorn3
df45a06f89 Don't add .d and .rmeta files to the sysroot
Fixes #1106
2020-11-08 17:15:31 +01:00
bjorn3
6210ee2134 Set diff=rust git attribute for rust files
This gives nicer hunk headers

Fixes #1095
2020-11-08 16:36:52 +01:00
Vadim Petrochenkov
e9c34b3cf8 Collapse all uses of target.options.foo into target.foo
with an eye on merging `TargetOptions` into `Target`.

`TargetOptions` as a separate structure is mostly an implementation detail of `Target` construction, all its fields logically belong to `Target` and available from `Target` through `Deref` impls.
2020-11-08 17:29:13 +03:00
bjorn3
11dd005a88 Sync from rust 0256d065d4 2020-11-07 19:34:01 +01:00
bjorn3
9e1ac29cc9 Fix ICE (part 2) 2020-11-06 21:29:11 +01:00
bjorn3
4da67855f1 Rustfmt 2020-11-06 19:50:30 +01:00
bjorn3
509054d4de Fix ICE 2020-11-06 19:49:33 +01:00
bjorn3
9b66df4249 Sync from rust dc06a36074 2020-11-06 19:44:56 +01:00
bjorn3
66e4f1bb7a Don't overwrite RUSTFLAGS for cargo.sh 2020-11-06 19:33:55 +01:00
bjorn3
777c9dabc0 Add rustup pull command 2020-11-06 19:33:54 +01:00
Yuki Okushi
8a097f7b2c Rollup merge of #78666 - sasurau4:fix/shellcheck-error, r=jyn514
Fix shellcheck error

## Overview

Helps with #77290

This pr fix only errors of shellcheck, the result of `git ls-files '*.sh' | xargs shellcheck --severity=error`.

Fixing error are following.

- https://github.com/koalaman/shellcheck/wiki/SC2148
- https://github.com/koalaman/shellcheck/wiki/SC1008

Disable error following.
- https://github.com/koalaman/shellcheck/wiki/SC2068
2020-11-07 01:02:14 +09:00
Daiki Ihara
07aef90593 fix shellcheck error of SC2068 2020-11-06 20:33:12 +09:00
Daiki Ihara
21a097f17e fix shellcheck error of SC2148 2020-11-06 20:33:12 +09:00
Tomasz Miąsko
f7e11cba36 inliner: Use substs_for_mir_body
Changes from 68965 extended the kind of instances that are being
inlined. For some of those, the `instance_mir` returns a MIR body that
is already expressed in terms of the types found in substitution array,
and doesn't need further substitution.

Use `substs_for_mir_body` to take that into account.
2020-11-06 00:00:00 +00:00
Guillaume Gomez
d6f457d835 Fix even more URLs 2020-11-05 20:11:29 +01:00
bjorn3
19931e2d87
Merge pull request #1109 from jakobhellermann/shellcheck
fix (many) shellcheck warnings
2020-11-05 12:12:31 +01:00
Jakob Hellermann
33a904425c make requested PR changes 2020-11-05 10:17:42 +01:00
Jakob Hellermann
0f10f2a960 manually fix some shellcheck warnings 2020-11-04 16:14:00 +01:00
Jakob Hellermann
d6a9dfa3d4 run 'shellcheck -f diff $(fd --extension sh) | git apply' 2020-11-04 16:07:42 +01:00
oli
6e96e10f93 u64::try_from will now fail if ScalarInt isn't exactly 64 bits, thus we use to_bits with the correct size 2020-11-04 13:59:11 +00:00
oli
5fa1c8f91a u128 truncation and sign extension are not just interpreter related 2020-11-04 13:41:58 +00:00
oli
0dcf78ba87 s/Scalar::Raw/Scalar::Int 2020-11-04 10:11:31 +00:00
oli
7e8b15e050 Fix cranelift build 2020-11-04 10:10:44 +00:00
bjorn3
1aaa02401d
Merge pull request #1108 from jyn514/cargo-target-dir
Fix compiling with CARGO_TARGET_DIR
2020-11-04 07:36:10 +01:00
Joshua Nelson
a3a508a516 Fix compiling with CARGO_TARGET_DIR
Previously it would error:

```
    Finished dev [unoptimized + debuginfo] target(s) in 26.93s
mv target/debug/main raytracer_cg_llvm
mv: cannot stat 'target/debug/main': No such file or directory
```
2020-11-03 20:51:11 -05:00
bjorn3
81b673b7eb Rustup to rustc 1.49.0-nightly (338f939a8 2020-11-02) 2020-11-03 19:25:31 +01:00
bjorn3
b8a9beb13e Remove unnecessary -Ztrim-diagnostic-paths=no 2020-11-03 19:17:44 +01:00
bjorn3
285c7c66dc Merge commit '03f01bbe901d60b71cf2c5ec766aef5e532ab79d' into update_cg_clif-2020-11-01 2020-11-03 11:00:04 +01:00
bjorn3
03f01bbe90
Merge pull request #1105 from bjorn3/test_rustc_bootstrapping
Test bootstrapping of rustc using cg_clif
2020-11-02 19:14:50 +01:00
bjorn3
54b1d101ef Test bootstrapping of rustc using cg_clif 2020-11-02 18:54:55 +01:00
bjorn3
646b00ff77 Revert unintentional change 2020-11-02 18:54:10 +01:00
bjorn3
520a61f21b
Merge pull request #1104 from bjorn3/build_system_refactor
Build system refactor
2020-11-02 18:46:36 +01:00
bjorn3
8315730895 Upload prebuilt cg_clif 2020-11-02 18:24:21 +01:00
bjorn3
0c34f5aba8 Refactor the build system 2020-11-02 18:17:39 +01:00
bjorn3
9410b5820a Update build instructions 2020-11-01 19:51:35 +01:00
bjorn3
1ea618a7b6 Make it easier to use build_sysroot.sh 2020-11-01 19:47:14 +01:00
bjorn3
cb367602ff Split the actual tests out into scripts/tests.sh 2020-11-01 19:39:44 +01:00
bjorn3
324e63de28 Ensure that sysroot build works with CARGO_TARGET_DIR set 2020-11-01 19:38:21 +01:00
bjorn3
8b9c2135d0 Fix transmutes between vectors and integers
Fixes #1102
2020-11-01 18:35:19 +01:00