bjorn3
cc59a427c9
Use git clone --filter=tree:0 to speed up rust clones in CI
2023-11-12 17:35:58 +00:00
bjorn3
dd256865f9
Merge pull request #1425 from rust-lang/crypto_intrinsics_inline_asm
...
Implement AES-NI and SHA256 crypto intrinsics using inline asm
2023-11-12 18:33:57 +01:00
bjorn3
ca85cc3c7b
Implement SHA256 intrinsics using inline asm
2023-11-12 17:17:57 +00:00
bjorn3
813f8b4fd0
Use inline asm for _mm_clmulepi64_si128
...
This is a lot more compact and significantly faster
2023-11-12 17:10:46 +00:00
bjorn3
dc60334777
Implement AES-NI intrinsics using inline asm
2023-11-12 17:10:46 +00:00
bjorn3
6ef877c8c2
Support narrowing casts in mir_operand_get_const_val
2023-11-12 17:10:46 +00:00
bjorn3
2769ac03ba
Inline codegen_xgetbv into llvm_x86.rs
2023-11-12 17:10:46 +00:00
bjorn3
9205667c0d
Extract codegen_inline_asm_inner function and use in codegen_xgetbv
2023-11-12 17:10:46 +00:00
bjorn3
7947070789
Minor changes to codegen_inline_asm_terminator
2023-11-12 17:10:46 +00:00
bjorn3
ede3269ed8
Print /proc/cpuinfo for the CI runner where relevant
2023-11-12 16:59:15 +00:00
bjorn3
bf85e182d0
Merge pull request #1421 from Kobzol/patch-1
...
Add Rustup installation instructions to README
2023-11-12 15:45:43 +01:00
Jakub Beránek
d8445b1cf2
Add Rustup installation instructions to README
...
Now that cranelift is distributed with Rustup, I find myself constantly searching for the https://github.com/rust-lang/rust/pull/81746 PR. I think that it would be useful to also describe the Rustup installation/usage instructions here in README.
2023-11-11 22:49:27 +01:00
bjorn3
cdae1c939f
Set CG_CLIF_FORCE_GNU_AS for all rustc tests
2023-11-11 13:19:49 +00:00
bjorn3
c59226c3df
Merge branch 'sync_from_rust'
2023-11-10 11:33:22 +00:00
bjorn3
d49fd9f877
Merge commit 'c84d1871dc4456539b7b578830268ab3539915d0' into sync_cg_clif-2023-11-10
2023-11-10 11:30:51 +00:00
bjorn3
c84d1871dc
Rustup to rustc 1.75.0-nightly ( 0f44eb32f
2023-11-09)
2023-11-10 11:27:03 +00:00
bjorn3
6e7961ac5d
Sync from rust 0f44eb32f1
2023-11-10 11:10:26 +00:00
bjorn3
82487a9447
Merge pull request #1417 from rust-lang/implement_xgetbv
...
Implement a lot of SIMD intrinsics
2023-11-07 19:49:50 +01:00
bjorn3
864973135a
Implement all vendor intrinsics used by the simd-json crate
2023-11-07 18:10:12 +00:00
bjorn3
9f426cef38
Merge pull request #1416 from afonso360/aarch64-intrinsics-1
...
Implement AArch64 intrinsics necessary for simd-json
2023-11-07 14:38:10 +01:00
bjorn3
ecf79a304a
Implement all vendor intrinsics used by the fimg crate
2023-11-07 13:32:11 +00:00
bjorn3
0a35232c85
Implement all vendor intrinsics used by the httparse crate
2023-11-07 09:42:01 +00:00
bjorn3
61e38ceea7
Implement all SSE intrinsics used by the jpeg-decoder crate
2023-11-07 08:59:16 +00:00
bjorn3
438194980b
Implement all avx2 intrinsics used by the image crate
2023-11-05 19:49:30 +00:00
bjorn3
6a53acefd8
Implement _mm256_permute2f128_ps and _mm256_permute2f128_pd intrinsics
2023-11-05 18:24:39 +00:00
Afonso Bordado
209476e33a
Only import aarch64 intrinsics on aarch64
2023-11-04 19:47:56 +00:00
Afonso Bordado
f824da66c6
Make neon example build in all arches
2023-11-04 19:41:08 +00:00
Afonso Bordado
70a6abfd29
Add unsigned saturating add/sub intrinsics for aarch64
2023-11-04 19:37:36 +00:00
Afonso Bordado
88c2e7896b
Implement aarch64 addp intrinsics
2023-11-04 19:11:15 +00:00
Afonso Bordado
1f09bae6a8
Implement min/max neon intrisics
2023-11-04 19:07:13 +00:00
Nicholas Nethercote
8eca01f4b6
Remove support for compiler plugins.
...
They've been deprecated for four years.
This commit includes the following changes.
- It eliminates the `rustc_plugin_impl` crate.
- It changes the language used for lints in
`compiler/rustc_driver_impl/src/lib.rs` and
`compiler/rustc_lint/src/context.rs`. External lints are now called
"loaded" lints, rather than "plugins" to avoid confusion with the old
plugins. This only has a tiny effect on the output of `-W help`.
- E0457 and E0498 are no longer used.
- E0463 is narrowed, now only relating to unfound crates, not plugins.
- The `plugin` feature was moved from "active" to "removed".
- It removes the entire plugins chapter from the unstable book.
- It removes quite a few tests, mostly all of those in
`tests/ui-fulldeps/plugin/`.
Closes #29597 .
2023-11-04 08:50:46 +11:00
bjorn3
f6a8c3afb5
Add real implementation of _xgetbv()
2023-11-02 16:10:15 +00:00
bjorn3
909513ef74
Use Value instead of CValue in CInlineAsmOperand
2023-11-02 15:32:44 +00:00
bjorn3
ef3703694f
Disable a couple of rustc tests which are broken due to a rustc bug
2023-11-02 10:27:56 +00:00
bjorn3
c04ceb4342
Fix workaround for the int $$0x29
issue to not crash on empty inline asm
2023-11-02 09:52:21 +00:00
bjorn3
04f1024ecb
Rustup to rustc 1.75.0-nightly ( 75b064d26
2023-11-01)
2023-11-02 09:44:36 +00:00
bjorn3
361585e06d
Sync from rust 75b064d269
2023-11-02 09:38:34 +00:00
George Bateman
03c9acdd8f
Support enum variants in offset_of!
2023-10-31 23:25:54 +00:00
bjorn3
48ca2d9703
Implement llvm.fma.v* intrinsics
...
cc #1405
2023-10-31 18:38:31 +00:00
Guillaume Gomez
aed0ed2875
Rollup merge of #117317 - RalfJung:track-caller, r=oli-obk
...
share some track_caller logic between interpret and codegen
Also move the code that implements the track_caller intrinsics out of the core interpreter engine -- it's just a helper creating a const-allocation, doesn't need to be part of the interpreter core.
2023-10-30 17:33:16 +01:00
bjorn3
9a33f82140
Remove inline asm support from the list of limitations
...
#1403 extended support to all targets supported by cg_clif
2023-10-30 15:21:34 +00:00
bjorn3
51f6ac7bfc
Merge branch 'sync_from_rust'
2023-10-29 20:32:36 +00:00
bjorn3
41dcb52153
Merge commit 'dde58803fd6cbb270c7a437f36a8a3a29fbef679' into sync_cg_clif-2023-10-29
2023-10-29 20:30:50 +00:00
bjorn3
dde58803fd
Rustup to rustc 1.75.0-nightly ( e5cfc5547
2023-10-28)
2023-10-29 20:29:52 +00:00
bjorn3
e281e6fdb2
Sync from rust e5cfc55477
2023-10-29 20:18:11 +00:00
bjorn3
9436eae49b
Merge pull request #1403 from rust-lang/use_llvm_backend_as_assembler
...
Support and stabilize inline asm on all platforms
2023-10-29 21:14:08 +01:00
bjorn3
69c6aa560c
Avoid infinite recursion when cranelift is the default codegen backend
2023-10-29 19:45:30 +00:00
bjorn3
35453ac0eb
Stabilize inline asm usage on all platforms
...
But exclude sym operands for now as they are somewhat broken.
2023-10-29 16:40:52 +00:00
bjorn3
b1e705146a
Unconditionally handle int $$0x29 using a shim
2023-10-29 16:08:16 +00:00
bjorn3
827a6d8d9f
Use the LLVM rustc backend as external assembler
...
The LLVM backend is generally available, while the gnu assembler is not
on Windows and many other platforms by default.
2023-10-29 16:06:32 +00:00