]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoFix some warnings
bjorn3 [Wed, 18 Dec 2019 19:26:41 +0000 (20:26 +0100)]
Fix some warnings

4 years agoFix debug build
bjorn3 [Wed, 18 Dec 2019 19:25:05 +0000 (20:25 +0100)]
Fix debug build

4 years ago[OPT] Use RETURN_PLACE instead of fn_sig.output() to get return layout
bjorn3 [Tue, 17 Dec 2019 17:41:13 +0000 (18:41 +0100)]
[OPT] Use RETURN_PLACE instead of fn_sig.output() to get return layout

4 years ago[OPT] Use IndexVec instead of HashMap in ssa analysis
bjorn3 [Tue, 17 Dec 2019 16:49:12 +0000 (17:49 +0100)]
[OPT] Use IndexVec instead of HashMap in ssa analysis

4 years ago[OPT] Push fx.monomorphize to the callers of fx.layout_of
bjorn3 [Tue, 17 Dec 2019 15:58:34 +0000 (16:58 +0100)]
[OPT] Push fx.monomorphize to the callers of fx.layout_of

This prevents some repeated monomorphizations

4 years agoThird try to fix CI
bjorn3 [Tue, 17 Dec 2019 15:55:29 +0000 (16:55 +0100)]
Third try to fix CI

4 years agoReally fix CI
bjorn3 [Tue, 17 Dec 2019 15:37:57 +0000 (16:37 +0100)]
Really fix CI

4 years ago[OPT] Avoid calling target_triple for every call to codegen
bjorn3 [Tue, 17 Dec 2019 14:03:32 +0000 (15:03 +0100)]
[OPT] Avoid calling target_triple for every call to codegen

4 years ago[OPT] Don't call .to_string() on MonoItem's
bjorn3 [Tue, 17 Dec 2019 12:23:28 +0000 (13:23 +0100)]
[OPT] Don't call .to_string() on MonoItem's

4 years agoFix testing when lldb is not installed
bjorn3 [Mon, 16 Dec 2019 20:47:13 +0000 (21:47 +0100)]
Fix testing when lldb is not installed

4 years agoOptimize line_program_add_file
bjorn3 [Mon, 16 Dec 2019 12:23:41 +0000 (13:23 +0100)]
Optimize line_program_add_file

4 years agoMerge pull request #802 from bjorn3/debuginfo_locals
bjorn3 [Mon, 16 Dec 2019 11:14:45 +0000 (12:14 +0100)]
Merge pull request #802 from bjorn3/debuginfo_locals

Debuginfo locals

4 years agoDisable local debuginfo for now
bjorn3 [Mon, 16 Dec 2019 11:12:51 +0000 (12:12 +0100)]
Disable local debuginfo for now

4 years agoRustup
bjorn3 [Mon, 16 Dec 2019 11:11:14 +0000 (12:11 +0100)]
Rustup

4 years agoRustup to rustc 1.41.0-nightly (e87a205c2 2019-11-27)
bjorn3 [Thu, 28 Nov 2019 20:35:03 +0000 (21:35 +0100)]
Rustup to rustc 1.41.0-nightly (e87a205c2 2019-11-27)

4 years agoSome optimizations
bjorn3 [Thu, 28 Nov 2019 19:34:55 +0000 (20:34 +0100)]
Some optimizations

* Only format global _comments when debug_assertions are enabled
* Only call build_value_labels_ranges in base.rs when debug_assertions are enabled

Benchmark #1: CHANNEL='pre' ../cargo.sh build
  Time (mean ± σ):     17.657 s ±  1.050 s    [User: 31.871 s, System: 3.014 s]
  Range (min … max):   16.907 s … 20.394 s    10 runs

Benchmark #2: ../cargo.sh build
  Time (mean ± σ):     16.640 s ±  0.255 s    [User: 30.238 s, System: 2.965 s]
  Range (min … max):   16.413 s … 17.186 s    10 runs

  Warning: Statistical outliers were detected. Consider re-running this benchmark on a quiet PC without any interferences from other programs. It might help to use the '--warmup' or '--prepare' options.

Summary
  '../cargo.sh build' ran
    1.06 ± 0.07 times faster than 'CHANNEL='pre' ../cargo.sh build'

4 years agoChange test script
bjorn3 [Fri, 15 Nov 2019 20:58:47 +0000 (21:58 +0100)]
Change test script

4 years agoEmit DW_TAG_structure_type including fields for structs
bjorn3 [Fri, 15 Nov 2019 20:32:52 +0000 (21:32 +0100)]
Emit DW_TAG_structure_type including fields for structs

4 years agoUse set_val_label before every def_var
bjorn3 [Fri, 15 Nov 2019 20:07:54 +0000 (21:07 +0100)]
Use set_val_label before every def_var

4 years agoFix translate_loc for ValueLoc::Stack
bjorn3 [Fri, 15 Nov 2019 20:07:18 +0000 (21:07 +0100)]
Fix translate_loc for ValueLoc::Stack

4 years agoAdd debuginfo test
bjorn3 [Mon, 16 Dec 2019 11:06:52 +0000 (12:06 +0100)]
Add debuginfo test

4 years agoImplement local reading for locals on stack
bjorn3 [Tue, 12 Nov 2019 20:36:31 +0000 (21:36 +0100)]
Implement local reading for locals on stack

4 years agoRustfmt debuginfo
bjorn3 [Tue, 12 Nov 2019 20:13:15 +0000 (21:13 +0100)]
Rustfmt debuginfo

4 years agoSmall change
bjorn3 [Tue, 12 Nov 2019 20:10:51 +0000 (21:10 +0100)]
Small change

4 years agoSplit debuginfo/line_info.rs from debuginfo/mod.rs
bjorn3 [Tue, 12 Nov 2019 20:08:08 +0000 (21:08 +0100)]
Split debuginfo/line_info.rs from debuginfo/mod.rs

4 years agoSplit debuginfo/emit.rs part out of debuginfo/mod.rs
bjorn3 [Tue, 12 Nov 2019 19:52:32 +0000 (20:52 +0100)]
Split debuginfo/emit.rs part out of debuginfo/mod.rs

4 years agoMove debuginfo.rs to debuginfo/mod.rs
bjorn3 [Tue, 12 Nov 2019 19:44:20 +0000 (20:44 +0100)]
Move debuginfo.rs to debuginfo/mod.rs

4 years agoExtract local definition from FunctionDebugContext::define
bjorn3 [Tue, 12 Nov 2019 19:43:34 +0000 (20:43 +0100)]
Extract local definition from FunctionDebugContext::define

4 years agoFix local value reading
bjorn3 [Tue, 12 Nov 2019 19:31:53 +0000 (20:31 +0100)]
Fix local value reading

LLDB doesn't understand base address entries

4 years ago[WIP] Set local DW_AT_location
bjorn3 [Mon, 11 Nov 2019 20:43:57 +0000 (21:43 +0100)]
[WIP] Set local DW_AT_location

4 years agoMonomorphize locals
bjorn3 [Mon, 11 Nov 2019 19:49:20 +0000 (20:49 +0100)]
Monomorphize locals

4 years ago[WIP] debuginfo: Add types for locals
bjorn3 [Sat, 9 Nov 2019 17:40:11 +0000 (18:40 +0100)]
[WIP] debuginfo: Add types for locals

4 years ago[WIP] debuginfo for locals
bjorn3 [Sat, 9 Nov 2019 15:42:21 +0000 (16:42 +0100)]
[WIP] debuginfo for locals

4 years agoUpdate dependencies
bjorn3 [Mon, 16 Dec 2019 11:03:58 +0000 (12:03 +0100)]
Update dependencies

4 years agoUpdate Cranelift
bjorn3 [Mon, 16 Dec 2019 11:00:29 +0000 (12:00 +0100)]
Update Cranelift

4 years agoFix Linux libtest
bjorn3 [Mon, 16 Dec 2019 10:50:20 +0000 (11:50 +0100)]
Fix Linux libtest

4 years agoRustup to rustc 1.41.0-nightly (a605441e0 2019-12-15)
bjorn3 [Mon, 16 Dec 2019 10:33:57 +0000 (11:33 +0100)]
Rustup to rustc 1.41.0-nightly (a605441e0 2019-12-15)

4 years agoRemove some workarounds for missing inst legalizations
bjorn3 [Sun, 8 Dec 2019 10:52:04 +0000 (11:52 +0100)]
Remove some workarounds for missing inst legalizations

4 years agoUpdate Cranelift
bjorn3 [Sun, 8 Dec 2019 10:51:18 +0000 (11:51 +0100)]
Update Cranelift

4 years agoRustup to rustc 1.41.0-nightly (5c5c8eb86 2019-12-07)
bjorn3 [Sun, 8 Dec 2019 10:32:03 +0000 (11:32 +0100)]
Rustup to rustc 1.41.0-nightly (5c5c8eb86 2019-12-07)

4 years agoRustup to rustc 1.41.0-nightly (6d77e45f0 2019-12-04)
bjorn3 [Thu, 5 Dec 2019 20:00:57 +0000 (21:00 +0100)]
Rustup to rustc 1.41.0-nightly (6d77e45f0 2019-12-04)

4 years agoRustup to rustc 1.41.0-nightly (25d8a9494 2019-11-29)
bjorn3 [Thu, 28 Nov 2019 20:35:03 +0000 (21:35 +0100)]
Rustup to rustc 1.41.0-nightly (25d8a9494 2019-11-29)

4 years agoUpdate dependencies
bjorn3 [Tue, 26 Nov 2019 19:55:03 +0000 (20:55 +0100)]
Update dependencies

4 years agoUpdate Cranelift
bjorn3 [Tue, 26 Nov 2019 19:49:02 +0000 (20:49 +0100)]
Update Cranelift

4 years agoMerge pull request #808 from bjorn3/dependabot/cargo/cranelift-0b40b11
dependabot-preview[bot] [Mon, 25 Nov 2019 06:08:13 +0000 (06:08 +0000)]
Merge pull request #808 from bjorn3/dependabot/cargo/cranelift-0b40b11

4 years agoBump cranelift from `bed9a72` to `0b40b11`
dependabot-preview[bot] [Mon, 25 Nov 2019 05:02:10 +0000 (05:02 +0000)]
Bump cranelift from `bed9a72` to `0b40b11`

Bumps [cranelift](https://github.com/bytecodealliance/cranelift) from `bed9a72` to `0b40b11`.
- [Release notes](https://github.com/bytecodealliance/cranelift/releases)
- [Commits](https://github.com/bytecodealliance/cranelift/compare/bed9a72a777f1b972e58ad250ead851585d9ab1e...0b40b114f66702478148f1184c768307b9599870)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
4 years agoRustup to rustc 1.41.0-nightly (0c987c5c0 2019-11-23)
bjorn3 [Sun, 24 Nov 2019 15:30:15 +0000 (16:30 +0100)]
Rustup to rustc 1.41.0-nightly (0c987c5c0 2019-11-23)

4 years agoRun libcore tests
bjorn3 [Sun, 24 Nov 2019 14:44:39 +0000 (15:44 +0100)]
Run libcore tests

4 years agoImplement log10f* intrinsics
bjorn3 [Sun, 24 Nov 2019 14:30:28 +0000 (15:30 +0100)]
Implement log10f* intrinsics

4 years agoCorrectly align returned addr for to_addr on NoPlace
bjorn3 [Sun, 24 Nov 2019 13:56:51 +0000 (14:56 +0100)]
Correctly align returned addr for to_addr on NoPlace

4 years agoBenchmark simple-raytracer compilation
bjorn3 [Sat, 23 Nov 2019 14:10:29 +0000 (15:10 +0100)]
Benchmark simple-raytracer compilation

[BENCH COMPILE] ebobby/simple-raytracer
Benchmark #1: RUSTFLAGS='' cargo build --target x86_64-apple-darwin
  Time (mean ± σ):     16.539 s ±  0.781 s    [User: 46.043 s, System: 3.822 s]
  Range (min … max):   15.057 s … 17.566 s    10 runs

Benchmark #2: ../cargo.sh build
  Time (mean ± σ):     14.550 s ±  0.443 s    [User: 25.856 s, System: 4.214 s]
  Range (min … max):   14.208 s … 15.751 s    10 runs

Summary
  '../cargo.sh build' ran
    1.14 ± 0.06 times faster than 'RUSTFLAGS='' cargo build --target x86_64-apple-darwin'
[BENCH RUN] ebobby/simple-raytracer
Benchmark #1: ./raytracer_cg_llvm
  Time (mean ± σ):      6.436 s ±  0.022 s    [User: 6.392 s, System: 0.018 s]
  Range (min … max):    6.408 s …  6.466 s    10 runs

Benchmark #2: ./raytracer_cg_clif
  Time (mean ± σ):      9.604 s ±  0.088 s    [User: 9.547 s, System: 0.023 s]
  Range (min … max):    9.503 s …  9.742 s    10 runs

Summary
  './raytracer_cg_llvm' ran
    1.49 ± 0.01 times faster than './raytracer_cg_clif'

4 years agoEnable object backend by default
bjorn3 [Sat, 23 Nov 2019 14:06:23 +0000 (15:06 +0100)]
Enable object backend by default

4 years agoRustup to rustc 1.41.0-nightly (53712f863 2019-11-21)
bjorn3 [Fri, 22 Nov 2019 14:56:40 +0000 (15:56 +0100)]
Rustup to rustc 1.41.0-nightly (53712f863 2019-11-21)

4 years agoRemove FIXME
bjorn3 [Sat, 16 Nov 2019 15:54:47 +0000 (16:54 +0100)]
Remove FIXME

4 years agoFix signed cast to 128bit integer
bjorn3 [Sat, 16 Nov 2019 15:44:26 +0000 (16:44 +0100)]
Fix signed cast to 128bit integer

4 years agoUpdate Cranelift
bjorn3 [Sat, 16 Nov 2019 14:22:43 +0000 (15:22 +0100)]
Update Cranelift

4 years agoRustup to rustc 1.41.0-nightly (82cf3a448 2019-11-14)
bjorn3 [Fri, 15 Nov 2019 19:47:22 +0000 (20:47 +0100)]
Rustup to rustc 1.41.0-nightly (82cf3a448 2019-11-14)

4 years agoUpdate dependencies
bjorn3 [Thu, 14 Nov 2019 20:38:08 +0000 (21:38 +0100)]
Update dependencies

4 years agoUpdate cranelift and update git url for move to bytecodealliance
bjorn3 [Thu, 14 Nov 2019 20:32:18 +0000 (21:32 +0100)]
Update cranelift and update git url for move to bytecodealliance

Fixes #796

4 years agoRustup to rustc 1.41.0-nightly (ded5ee001 2019-11-13)
bjorn3 [Thu, 14 Nov 2019 20:13:40 +0000 (21:13 +0100)]
Rustup to rustc 1.41.0-nightly (ded5ee001 2019-11-13)

4 years agoUpdate Cranelift and faerie
bjorn3 [Mon, 11 Nov 2019 19:39:47 +0000 (20:39 +0100)]
Update Cranelift and faerie

4 years agoRustup to rustc 1.40.0-nightly (3fc30d884 2019-11-10)
bjorn3 [Mon, 11 Nov 2019 19:34:42 +0000 (20:34 +0100)]
Rustup to rustc 1.40.0-nightly (3fc30d884 2019-11-10)

4 years agoFix backend_object build
bjorn3 [Sat, 9 Nov 2019 14:50:48 +0000 (15:50 +0100)]
Fix backend_object build

4 years agoRustup to rustc 1.40.0-nightly (9e346646e 2019-11-08)
bjorn3 [Sat, 9 Nov 2019 10:14:18 +0000 (11:14 +0100)]
Rustup to rustc 1.40.0-nightly (9e346646e 2019-11-08)

4 years agoUpdate cranelift
bjorn3 [Wed, 6 Nov 2019 19:48:29 +0000 (20:48 +0100)]
Update cranelift

4 years agoRustup to rustc 1.40.0-nightly (aa4e57ca8 2019-10-31)
bjorn3 [Fri, 1 Nov 2019 19:22:59 +0000 (20:22 +0100)]
Rustup to rustc 1.40.0-nightly (aa4e57ca8 2019-10-31)

4 years agoUpdate dependencies
bjorn3 [Fri, 1 Nov 2019 19:12:03 +0000 (20:12 +0100)]
Update dependencies

4 years agoUpdate cranelift and object
bjorn3 [Fri, 1 Nov 2019 19:08:42 +0000 (20:08 +0100)]
Update cranelift and object

4 years agoUpdate dependencies
bjorn3 [Tue, 29 Oct 2019 18:07:07 +0000 (19:07 +0100)]
Update dependencies

4 years agoMerge pull request #759 from bjorn3/fix_macho_debuginfo
bjorn3 [Sat, 26 Oct 2019 16:37:53 +0000 (18:37 +0200)]
Merge pull request #759 from bjorn3/fix_macho_debuginfo

Fix debuginfo for machO

4 years agoChanges for gimli-rs/object#133
bjorn3 [Fri, 25 Oct 2019 20:01:31 +0000 (22:01 +0200)]
Changes for gimli-rs/object#133

4 years agoRustup to rustc 1.40.0-nightly (10a52c25c 2019-10-24)
bjorn3 [Fri, 25 Oct 2019 19:24:50 +0000 (21:24 +0200)]
Rustup to rustc 1.40.0-nightly (10a52c25c 2019-10-24)

4 years agoFix debuginfo for machO
bjorn3 [Sat, 19 Oct 2019 13:37:07 +0000 (15:37 +0200)]
Fix debuginfo for machO

This only fixes it when using object::write as backend, and not when using faerie.

There were two problems:

* object::write doesn't replace .debug_info with __debug_info, unlike faerie
* machO requires section relative relocations, and not symbol relative
  relocations. When using symbol relative relocations, the linker
  interprets the relocations as section relative. Thus writing the wrong
  values to the debug sections.

Fixes #303

4 years agoMerge pull request #758 from bjorn3/object_write
bjorn3 [Sat, 19 Oct 2019 10:54:13 +0000 (12:54 +0200)]
Merge pull request #758 from bjorn3/object_write

Add object::write as alternative object file writer

4 years agoFix travis ci config
bjorn3 [Sat, 19 Oct 2019 09:10:34 +0000 (11:10 +0200)]
Fix travis ci config

4 years agoFix metadata symbol scope
bjorn3 [Sat, 19 Oct 2019 09:08:16 +0000 (11:08 +0200)]
Fix metadata symbol scope

It should be exported from the generated dylib

4 years agoTest object::write backend on travis
bjorn3 [Sat, 19 Oct 2019 08:56:35 +0000 (10:56 +0200)]
Test object::write backend on travis

4 years agoFIx review comments
bjorn3 [Sat, 19 Oct 2019 08:52:56 +0000 (10:52 +0200)]
FIx review comments

4 years agoAdd support for object::write
bjorn3 [Fri, 18 Oct 2019 15:19:13 +0000 (17:19 +0200)]
Add support for object::write

4 years agoMake debuginfo writing backend agnostic
bjorn3 [Wed, 16 Oct 2019 19:21:20 +0000 (21:21 +0200)]
Make debuginfo writing backend agnostic

4 years agoMake dylib metadata write backend agnostic
bjorn3 [Wed, 16 Oct 2019 18:48:09 +0000 (20:48 +0200)]
Make dylib metadata write backend agnostic

4 years agoRustup to rustc 1.40.0-nightly (fa0f7d008 2019-10-17)
bjorn3 [Fri, 18 Oct 2019 16:31:26 +0000 (18:31 +0200)]
Rustup to rustc 1.40.0-nightly (fa0f7d008 2019-10-17)

4 years agoUpdate dependencies
bjorn3 [Wed, 16 Oct 2019 17:13:11 +0000 (19:13 +0200)]
Update dependencies

4 years agoUpdate Cranelift
bjorn3 [Wed, 16 Oct 2019 17:01:39 +0000 (19:01 +0200)]
Update Cranelift

4 years agoRustup to rustc 1.40.0-nightly (237d54ff6 2019-10-15)
bjorn3 [Wed, 16 Oct 2019 16:39:12 +0000 (18:39 +0200)]
Rustup to rustc 1.40.0-nightly (237d54ff6 2019-10-15)

4 years agoUpdate Cranelift
bjorn3 [Wed, 9 Oct 2019 18:34:25 +0000 (20:34 +0200)]
Update Cranelift

4 years agoBump miniz_oxide from 0.3.2 to 0.3.3 (#744)
dependabot-preview[bot] [Mon, 7 Oct 2019 17:43:48 +0000 (19:43 +0200)]
Bump miniz_oxide from 0.3.2 to 0.3.3 (#744)

Bumps [miniz_oxide](https://github.com/Frommi/miniz_oxide) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/Frommi/miniz_oxide/releases)
- [Commits](https://github.com/Frommi/miniz_oxide/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
4 years agoRemove bitflags dependency
bjorn3 [Sun, 6 Oct 2019 15:52:23 +0000 (17:52 +0200)]
Remove bitflags dependency

4 years agoRemove logfile support from unimpl.rs
bjorn3 [Sun, 6 Oct 2019 15:31:46 +0000 (17:31 +0200)]
Remove logfile support from unimpl.rs

I haven't used it in months

4 years agoMore 128bit support
bjorn3 [Sun, 6 Oct 2019 13:51:43 +0000 (15:51 +0200)]
More 128bit support

* UnOp::Neg
* ctpop
* bitreverse

Also replaces `if let Some(64u128) = ...` with `if ... = Some(u64u128)`
to be able to compile cg_clif using cg_clif, as cranelift_frontend::Switch
doesn't support i128 yet.

4 years agoRustup to rustc 1.40.0-nightly (787005079 2019-10-04)
bjorn3 [Sun, 6 Oct 2019 08:41:15 +0000 (10:41 +0200)]
Rustup to rustc 1.40.0-nightly (787005079 2019-10-04)

4 years agoUpdate dependencies
bjorn3 [Fri, 4 Oct 2019 19:11:58 +0000 (21:11 +0200)]
Update dependencies

4 years agoUpdate Cranelift
bjorn3 [Fri, 4 Oct 2019 19:11:00 +0000 (21:11 +0200)]
Update Cranelift

4 years agoUse DisplayFunctionAnnotations::default()
bjorn3 [Fri, 4 Oct 2019 12:57:07 +0000 (14:57 +0200)]
Use DisplayFunctionAnnotations::default()

4 years agoPredefine all local functions before codegen
bjorn3 [Fri, 4 Oct 2019 12:39:14 +0000 (14:39 +0200)]
Predefine all local functions before codegen

Otherwise only calls to previously codegened functions use relative
addressing instead of the GOT

Fixes #692

4 years agoBump cranelift from `c7fd5d9` to `ee6fe21` (#742)
dependabot-preview[bot] [Thu, 3 Oct 2019 18:30:18 +0000 (20:30 +0200)]
Bump cranelift from `c7fd5d9` to `ee6fe21` (#742)

Bumps [cranelift](https://github.com/CraneStation/cranelift) from `c7fd5d9` to `ee6fe21`.
- [Release notes](https://github.com/CraneStation/cranelift/releases)
- [Commits](https://github.com/CraneStation/cranelift/compare/c7fd5d9a47198ecf87c06716b351909417fecf6f...ee6fe21f924179466dd10c7b5b1e3c8e2422a7fa)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
4 years agoMerge pull request #729 from bjorn3/misc_changes
bjorn3 [Thu, 3 Oct 2019 17:20:34 +0000 (19:20 +0200)]
Merge pull request #729 from bjorn3/misc_changes

Update cranelift and use crates.io version of gimli

4 years agoUpdate cranelift, faerie and target-lexicon
bjorn3 [Sat, 28 Sep 2019 15:59:27 +0000 (17:59 +0200)]
Update cranelift, faerie and target-lexicon

4 years agoSwitch back to crates.io version of gimli
bjorn3 [Sat, 28 Sep 2019 15:49:11 +0000 (17:49 +0200)]
Switch back to crates.io version of gimli

Fixes #727

4 years agoRustup to rustc 1.40.0-nightly (2daa404e9 2019-10-02)
bjorn3 [Thu, 3 Oct 2019 15:22:01 +0000 (17:22 +0200)]
Rustup to rustc 1.40.0-nightly (2daa404e9 2019-10-02)