Commit Graph

2828 Commits

Author SHA1 Message Date
bjorn3
01be0ddacf Move FunctionDebugContext creation to codegen_fn 2022-08-18 17:17:33 +00:00
bjorn3
dbf5457308 Introduce FunctionDebugContext
This will make it easier to move TyCtxt requiring operations before clif
ir compilation.
2022-08-18 17:11:41 +00:00
bjorn3
312563f3c4 Use walk_chain for function span too
This is a correctness fix
2022-08-18 15:58:22 +00:00
bjorn3
259b21fd46 Remove TyCtxt from DebugContext
And explicitly thread it through everwhere it is needed.
2022-08-18 15:25:52 +00:00
bjorn3
e5493a5ea2 Remove Instance param of DebugContext::define_function 2022-08-18 15:25:47 +00:00
bjorn3
a49416da6d Remove stub local debuginfo implementation
It isn't actually wired up and temporarily removing it will make changes
to the debuginfo generation code much simpler.
2022-08-18 15:14:04 +00:00
bjorn3
5fc1366dfa Register debuginfo for lazy jit shim 2022-08-18 12:55:44 +00:00
bjorn3
df1b25171c Remove TyCtxt parameter from compile_fn 2022-08-17 13:47:52 +00:00
bjorn3
c820b7cd60 Remove TyCtxt field from CodegenCx 2022-08-17 13:43:32 +00:00
bjorn3
b181f2b376 Replace instance param of write_clif_file with symbol_name 2022-08-17 13:07:18 +00:00
bjorn3
701b2747c3 Remove optimize_function
It currently doesn't have any optimizations at all.
2022-08-17 13:03:32 +00:00
bjorn3
1cac888e43 Rustup to rustc 1.65.0-nightly (801821d15 2022-08-14) 2022-08-15 16:21:41 +02:00
bjorn3
fd428c0760 Sync from rust 6ce76091c7 2022-08-15 16:17:32 +02:00
bjorn3
1662702a88 Work around new asm! usage in measureme
This is necessary to fix rustc bootstraps
2022-08-14 16:37:30 +00:00
bjorn3
523f0db7db
Merge pull request #1264 from bjorn3/parallel_comp_refactor
Refactorings for enabling parallel compilation (part 1)
2022-08-13 16:53:28 +02:00
bjorn3
9461fd2cb0 Remove TyCtxt parameter from emit_cgu
TyCtxt isn't available on background threads.
2022-08-13 12:18:41 +00:00
bjorn3
4c0766ce6c Move error reporting out of emit_cgu
Error reporting requires a Session, which isn't available on background
threads.
2022-08-13 09:03:28 +00:00
Afonso Bordado
484041cefe
Rename abi-checker patch (#1262) 2022-08-13 11:02:16 +02:00
bjorn3
8c407e0fb4
Merge pull request #1255 from afonso360/abi-checker
Add abi-checker to y.rs and run it on CI
2022-08-13 08:34:55 +02:00
Afonso Bordado
69c6749aee Disable some abi-checker tests 2022-08-12 23:58:24 +01:00
Afonso Bordado
0706df5f8c Update abi-checker version 2022-08-12 21:47:36 +01:00
bjorn3
c2f0b3a1bf Move copy to incr comp cache to codegen join phase
The copy depends on Session, which is only available on the main thread.
As such the copy can't be done on future codegen threads.
2022-08-12 19:10:16 +00:00
bjorn3
6206c4e927 Stream object file to disk
This reduces memory usage and may improve performance slightly.
2022-08-12 18:57:01 +00:00
bjorn3
ab7c706306 Move build_isa call into make_module 2022-08-12 18:40:48 +00:00
bjorn3
d3512b1d8e Don't attempt to do incr comp for the allocator shim
The allocator shim doesn't get reused and the allocator shim is just
under 2kb, so reusing it is likely more expensive than regenerating it.
2022-08-12 18:29:46 +00:00
bjorn3
db7d8a811d Give fields of ModuleCodegenResult names 2022-08-12 18:29:43 +00:00
bjorn3
57818ce824
Merge pull request #1260 from uweigand/s390x-ignore-aligntest
Ignore ptr_bitops_tagging test on s390x
2022-08-12 14:40:21 +02:00
bjorn3
f76ca22479 Enable inline asm on macOS 2022-08-12 12:38:48 +00:00
bjorn3
e45f6000a0 Remove the partial linking hack for global asm support 2022-08-12 12:27:47 +00:00
Ulrich Weigand
8bcab19018 Ignore ptr_bitops_tagging test on s390x
This test requires dynamic stack re-alignment on s390x, which is
currently unsupported (see issue #1258).
2022-08-12 13:46:31 +02:00
bjorn3
48b312f04a Don't take TyCtxt as argument for compile_global_asm
This allows it to be executed on a background thread.
2022-08-12 11:44:52 +00:00
bjorn3
64c73d0b3c
Merge pull request #1257 from uweigand/memcpy-align
Fix alignment flag for emit_small_memory_copy
2022-08-12 13:14:14 +02:00
Ulrich Weigand
aca05cf603 Fix alignment flag for emit_small_memory_copy
Do not unconditionally pass the "aligned" MemFlag when calling
emit_small_memory_copy.  Instead, allow the back end to rely on
the alignment info passed separately to this routine.
2022-08-12 12:54:41 +02:00
bjorn3
066f844fff Move some sess.fatal calls out of compile_global_asm 2022-08-12 09:28:41 +00:00
bjorn3
7cc97ebcbb Extract global_asm module 2022-08-12 09:11:47 +00:00
bjorn3
c5adc96532 Introduce OngoingCodegen type 2022-08-11 13:49:08 +00:00
bjorn3
07bcd111f8 Return ModuleCodegenResult from reuse_workproduct_for_cgu 2022-08-11 13:38:07 +00:00
bjorn3
8a336a2ae1 Move cached_context out of CodegenCx 2022-08-10 18:47:05 +00:00
bjorn3
a10da0f768 Split non-compile parts of codegen_fn out into a separate function
The new codegen_and_compile_fn function only calls codegen_fn and then
compile_fn. This makes it possible for both parts to be called
separately by the driver.
2022-08-10 18:29:46 +00:00
bjorn3
a7443a61ab Move some code into codegen_fn_content 2022-08-10 15:06:17 +00:00
bjorn3
fa6480e43d Remove most trap functions and remove all trapnz usages 2022-08-09 12:27:34 +00:00
bjorn3
526553e4a3 Rustup to rustc 1.65.0-nightly (d394408fb 2022-08-07) 2022-08-08 18:30:01 +02:00
bjorn3
7368f5601e Sync from rust f03ce30962 2022-08-08 17:01:38 +02:00
Ralf Jung
1cde1a31a1 also update anyhow in codegen_cranelift 2022-08-08 09:04:26 -04:00
Afonso Bordado
7610be478f Move abi-checker to y.rs test 2022-08-06 21:24:38 +01:00
Afonso Bordado
e5ba71a71b Pass all pairs to abi-checker 2022-08-06 20:51:47 +01:00
Afonso Bordado
569312278f Add abi-checker to clean_all.sh 2022-08-06 20:51:20 +01:00
Afonso Bordado
fb6362e093 Test adding abi-checker to CI 2022-08-06 16:20:08 +01:00
Afonso Bordado
3bd9821342 Initial ABI Checker support 2022-08-06 15:56:37 +01:00
bjorn3
3c97227a43 Fix previous commit 2022-08-05 13:17:13 +00:00