561 Commits

Author SHA1 Message Date
antoyo
ffb092dbf1
Merge pull request #279 from GuillaumeGomez/regen-intrinsics
Regen intrinsics with latest LLVM version
2023-06-09 08:53:27 -04:00
Guillaume Gomez
2c6b979295 Regen intrinsics with latest LLVM version 2023-06-02 16:22:50 +02:00
antoyo
4d8c6d3502
Merge pull request #277 from rust-lang/feature/global-visibility
Set visibility of global
2023-05-25 19:35:38 -04:00
Antoni Boucher
a512e98028 Set visibility of global 2023-05-25 10:03:41 -04:00
antoyo
0cbf2b9715
Merge pull request #267 from rust-lang/inline-attribute
Add support for inline attribute
2023-04-16 17:55:00 -04:00
Antoni Boucher
b93041af0a Add support for inline attribute 2023-04-16 17:17:05 -04:00
antoyo
17cbb61c08
Merge pull request #266 from rust-lang/test/stdarch-emulator
Run emulated stdarch tests in the CI
2023-04-09 20:57:52 -04:00
Antoni Boucher
a6d7ab5b00 Run emulated stdarch tests in the CI 2023-04-08 16:00:50 -04:00
antoyo
76c10cc1c9
Merge pull request #262 from rust-lang/fix/vpshrdvw
Fix vpshrd llvm instrinsics
2023-04-07 09:00:41 -04:00
Antoni Boucher
65a20d3f71 Fix vpshrd llvm instrinsics 2023-04-07 08:10:34 -04:00
antoyo
ba60936e48
Merge pull request #260 from GuillaumeGomez/ignore-llvm
Add `llvm` folder to .gitignore file
2023-04-06 12:17:02 -04:00
antoyo
24ea06b0bf
Merge pull request #259 from GuillaumeGomez/regen-intrinsics
Regenerate intrinsics
2023-04-06 12:16:40 -04:00
Guillaume Gomez
98482ad1e4 Regen intrinsics 2023-04-06 17:39:05 +02:00
Guillaume Gomez
b769ad26b0 Add llvm folder to .gitignore file 2023-04-06 17:38:45 +02:00
antoyo
5af59b67b4
Merge pull request #261 from GuillaumeGomez/update-gcc-jit
Update gccjit dependency version
2023-04-06 11:34:04 -04:00
Guillaume Gomez
7e2e5054a6 Update gccjit dependency version 2023-04-05 16:30:21 +02:00
antoyo
ade3739c07
Merge pull request #257 from arpankapoor/master
Optimize bitreverse codegen
2023-03-28 17:15:12 -04:00
Arpan Kapoor
68b8500235
move u128 test to std_example 2023-03-27 20:33:05 +05:30
Arpan Kapoor
6e1a79c6a4
Add u128 PartialEq impl in mini_core.rs 2023-03-26 13:19:57 +05:30
Arpan Kapoor
77a9effd3d
Optimize bitreverse codegen 2023-03-24 13:06:20 +05:30
antoyo
08a6d6e16b
Merge pull request #255 from rust-lang/sync_from_rust_2023_feb_28_2
Sync from rust 2023 feb 28
2023-03-04 20:21:03 -05:00
Antoni Boucher
4b878ccab4 Fix tests 2023-03-04 19:49:03 -05:00
Antoni Boucher
3180da5529 Fix tests 2023-03-04 19:18:31 -05:00
Antoni Boucher
f83ede03f5 Fix tests 2023-03-04 18:52:25 -05:00
Antoni Boucher
42a89bd875 Fix tests 2023-03-04 15:41:30 -05:00
Antoni Boucher
9d5bc7c929 Fix tests 2023-03-04 15:25:34 -05:00
Antoni Boucher
5c35dc067d Fix warnings 2023-03-04 15:04:55 -05:00
Antoni Boucher
08c75aee1b Fix error in libgccjit12 code path 2023-03-04 15:03:05 -05:00
Antoni Boucher
6958188e10 Temporarily disable rust repo cache 2023-03-04 15:02:49 -05:00
Antoni Boucher
901e413a3f Fix tests 2023-03-04 14:42:34 -05:00
Antoni Boucher
a2f499f05f Fix tests 2023-03-04 14:30:29 -05:00
antoyo
8c3c02097d
Merge pull request #256 from GuillaumeGomez/regen-intrinsics
Regen intrinsics
2023-03-03 10:10:15 -05:00
Guillaume Gomez
74506d3bb1 Regen intrinsics 2023-03-02 23:31:18 +01:00
Antoni Boucher
b4f83c6ed8 Fix error 2023-03-02 17:15:57 -05:00
Antoni Boucher
d8b5a3eaa9 Fix to examples 2023-02-28 22:39:50 -05:00
Antoni Boucher
e74f6ff54f Fix rebase 2023-02-28 22:35:10 -05:00
Antoni Boucher
78f3a7ed1f Update toolchain 2023-02-28 22:20:44 -05:00
Alan Egerton
802e9026d9 Remove type-traversal trait aliases 2023-02-28 22:18:04 -05:00
David Wood
7696f981ea various: translation resources from cg backend
Extend `CodegenBackend` trait with a function returning the translation
resources from the codegen backend, which can be added to the complete
list of resources provided to the emitter.

Signed-off-by: David Wood <david.wood@huawei.com>
2023-02-28 22:16:56 -05:00
David Wood
564ab10b9c errors: generate typed identifiers in each crate
Instead of loading the Fluent resources for every crate in
`rustc_error_messages`, each crate generates typed identifiers for its
own diagnostics and creates a static which are pulled together in the
`rustc_driver` crate and provided to the diagnostic emitter.

Signed-off-by: David Wood <david.wood@huawei.com>
2023-02-28 22:16:56 -05:00
Oli Scherer
ae429e8cab s/eval_usize/eval_target_usize/ for clarity 2023-02-28 22:16:56 -05:00
David Wood
1640ccac4d session: diagnostic migration lint on more fns
Apply the diagnostic migration lint to more functions on `Session`.

Signed-off-by: David Wood <david.wood@huawei.com>
2023-02-28 22:03:22 -05:00
Erik Desjardins
bedaeda508 create and use GlobalAlloc::address_space 2023-02-28 22:03:22 -05:00
Erik Desjardins
7bf0670169 abi: add AddressSpace field to Primitive::Pointer
...and remove it from `PointeeInfo`, which isn't meant for this.

There are still various places (marked with FIXMEs) that assume all pointers
have the same size and alignment. Fixing this requires parsing non-default
address spaces in the data layout string, which will be done in a followup.
2023-02-28 22:03:22 -05:00
Albert Larsan
5dcda26aa6 Change src/test to tests in source files, fix tidy and tests 2023-02-28 22:03:21 -05:00
Michael Goulet
fa874b03e4 Simplify some iterator combinators 2023-02-28 22:00:40 -05:00
Jeremy Stucki
3a1d3241b4 Add missing anonymous lifetime 2023-02-28 21:59:38 -05:00
Jeremy Stucki
888137d7d2 rustc: Remove needless lifetimes 2023-02-28 21:59:38 -05:00
bjorn3
c2e83dce57 Destruct landing_pad return value before passing it to cg_ssa 2023-02-28 21:59:37 -05:00
Ramon de C Valle
7c2db89ce4 Add LLVM KCFI support to the Rust compiler
This commit adds LLVM Kernel Control Flow Integrity (KCFI) support to
the Rust compiler. It initially provides forward-edge control flow
protection for operating systems kernels for Rust-compiled code only by
aggregating function pointers in groups identified by their return and
parameter types. (See llvm/llvm-project@cff5bef.)

Forward-edge control flow protection for C or C++ and Rust -compiled
code "mixed binaries" (i.e., for when C or C++ and Rust -compiled code
share the same virtual address space) will be provided in later work as
part of this project by identifying C char and integer type uses at the
time types are encoded (see Type metadata in the design document in the
tracking issue #89653).

LLVM KCFI can be enabled with -Zsanitizer=kcfi.

Co-authored-by: bjorn3 <17426603+bjorn3@users.noreply.github.com>
2023-02-28 21:51:37 -05:00