Björn Steinbrink
2c17bfc20c
Skip no-op adjustments in trans
...
That allows us to keep using trans_into() in case of adjustments that
may actually be ignored in trans because they are a plain deref/ref pair
with no overloaded deref or unsizing.
Unoptimized(!) benchmarks from servo/servo#7638
Before
```
test goser::bench_clone ... bench: 17,701 ns/iter (+/- 58) = 30 MB/s
test goser::bincode::bench_decoder ... bench: 33,715 ns/iter (+/- 300) = 11 MB/s
test goser::bincode::bench_deserialize ... bench: 36,804 ns/iter (+/- 329) = 9 MB/s
test goser::bincode::bench_encoder ... bench: 34,695 ns/iter (+/- 149) = 11 MB/s
test goser::bincode::bench_populate ... bench: 18,879 ns/iter (+/- 88)
test goser::bincode::bench_serialize ... bench: 31,668 ns/iter (+/- 156) = 11 MB/s
test goser::capnp::bench_deserialize ... bench: 2,049 ns/iter (+/- 87) = 218 MB/s
test goser::capnp::bench_deserialize_packed ... bench: 10,707 ns/iter (+/- 258) = 31 MB/s
test goser::capnp::bench_populate ... bench: 635 ns/iter (+/- 5)
test goser::capnp::bench_serialize ... bench: 35,657 ns/iter (+/- 155) = 12 MB/s
test goser::capnp::bench_serialize_packed ... bench: 37,881 ns/iter (+/- 146) = 8 MB/s
test goser::msgpack::bench_decoder ... bench: 50,634 ns/iter (+/- 307) = 5 MB/s
test goser::msgpack::bench_encoder ... bench: 25,738 ns/iter (+/- 90) = 11 MB/s
test goser::msgpack::bench_populate ... bench: 18,900 ns/iter (+/- 138)
test goser::protobuf::bench_decoder ... bench: 2,791 ns/iter (+/- 29) = 102 MB/s
test goser::protobuf::bench_encoder ... bench: 75,414 ns/iter (+/- 358) = 3 MB/s
test goser::protobuf::bench_populate ... bench: 19,248 ns/iter (+/- 92)
test goser::rustc_serialize_json::bench_decoder ... bench: 109,999 ns/iter (+/- 797) = 5 MB/s
test goser::rustc_serialize_json::bench_encoder ... bench: 58,777 ns/iter (+/- 418) = 10 MB/s
test goser::rustc_serialize_json::bench_populate ... bench: 18,887 ns/iter (+/- 76)
test goser::serde_json::bench_deserializer ... bench: 104,803 ns/iter (+/- 770) = 5 MB/s
test goser::serde_json::bench_populate ... bench: 18,890 ns/iter (+/- 69)
test goser::serde_json::bench_serializer ... bench: 75,046 ns/iter (+/- 435) = 8 MB/s
```
After
```
test goser::bench_clone ... bench: 16,052 ns/iter (+/- 188) = 34 MB/s
test goser::bincode::bench_decoder ... bench: 31,194 ns/iter (+/- 941) = 12 MB/s
test goser::bincode::bench_deserialize ... bench: 33,934 ns/iter (+/- 352) = 10 MB/s
test goser::bincode::bench_encoder ... bench: 30,737 ns/iter (+/- 1,969) = 13 MB/s
test goser::bincode::bench_populate ... bench: 17,234 ns/iter (+/- 176)
test goser::bincode::bench_serialize ... bench: 28,269 ns/iter (+/- 452) = 12 MB/s
test goser::capnp::bench_deserialize ... bench: 2,019 ns/iter (+/- 85) = 221 MB/s
test goser::capnp::bench_deserialize_packed ... bench: 10,662 ns/iter (+/- 527) = 31 MB/s
test goser::capnp::bench_populate ... bench: 607 ns/iter (+/- 2)
test goser::capnp::bench_serialize ... bench: 30,488 ns/iter (+/- 219) = 14 MB/s
test goser::capnp::bench_serialize_packed ... bench: 33,731 ns/iter (+/- 201) = 9 MB/s
test goser::msgpack::bench_decoder ... bench: 46,921 ns/iter (+/- 461) = 6 MB/s
test goser::msgpack::bench_encoder ... bench: 22,315 ns/iter (+/- 96) = 12 MB/s
test goser::msgpack::bench_populate ... bench: 17,268 ns/iter (+/- 73)
test goser::protobuf::bench_decoder ... bench: 2,658 ns/iter (+/- 44) = 107 MB/s
test goser::protobuf::bench_encoder ... bench: 71,024 ns/iter (+/- 359) = 4 MB/s
test goser::protobuf::bench_populate ... bench: 17,704 ns/iter (+/- 104)
test goser::rustc_serialize_json::bench_decoder ... bench: 107,867 ns/iter (+/- 759) = 5 MB/s
test goser::rustc_serialize_json::bench_encoder ... bench: 52,327 ns/iter (+/- 479) = 11 MB/s
test goser::rustc_serialize_json::bench_populate ... bench: 17,262 ns/iter (+/- 68)
test goser::serde_json::bench_deserializer ... bench: 99,156 ns/iter (+/- 657) = 6 MB/s
test goser::serde_json::bench_populate ... bench: 17,264 ns/iter (+/- 77)
test goser::serde_json::bench_serializer ... bench: 66,135 ns/iter (+/- 392) = 9 MB/s
```
2015-09-18 15:46:58 +02:00
Vadim Petrochenkov
1eb42f1c78
Add feature gate
2015-09-18 15:28:01 +03:00
Vadim Petrochenkov
605a472948
Add some more tests
2015-09-18 15:26:09 +03:00
Vadim Petrochenkov
5fa6e857c9
Implement empty struct with braces (RFC 218)
2015-09-18 15:26:08 +03:00
kud1ing
da059a4e28
Add 1.3 release date
...
As of http://blog.rust-lang.org/2015/09/17/Rust-1.3.html
2015-09-18 09:19:20 +02:00
Nick Cameron
269c59d341
Warn on pub extern crate
.
...
Temporary 'fix' for #26775
2015-09-18 18:07:05 +12:00
Nick Cameron
66f662f37d
Fix crash with --save-analysis
...
Should be lowering ast expressions to HIR expressions, not cheating via the hir map. That goes wrong now that there is not a 1:1 mapping between ast and hir (in the case of the crash due to ExprParen).
2015-09-18 16:41:11 +12:00
Colin Wallace
cbc9517b02
Clarify where let accepts a pattern, spatially
2015-09-17 21:39:19 -07:00
Dongie Agnir
5a91ba8e60
Fix spelling and remove weirdly placed comma.
2015-09-17 23:45:36 -04:00
bors
cff0411706
Auto merge of #28476 - steveklabnik:rollup, r=steveklabnik
...
- Successful merges: #28276 , #28314 , #28422 , #28435 , #28451 , #28466 , #28470 , #28471 , #28473 , #28474
- Failed merges:
2015-09-17 21:34:34 +00:00
Guillaume Gomez
bc72f540ac
Add span_err_with_code method for BorrowckCtxt struct
2015-09-17 23:31:37 +02:00
Steve Klabnik
5faff5dbde
Rollup merge of #28474 - tshepang:repetition, r=steveklabnik
...
It's clear it's the one being documented
2015-09-17 17:06:56 -04:00
Steve Klabnik
7a5cd3c274
Rollup merge of #28473 - tshepang:lowercase, r=steveklabnik
2015-09-17 17:06:56 -04:00
Steve Klabnik
cd5870f3a3
Rollup merge of #28471 - tshepang:markup, r=steveklabnik
2015-09-17 17:06:56 -04:00
Steve Klabnik
fcfcee1363
Rollup merge of #28470 - tshepang:idiom, r=steveklabnik
2015-09-17 17:06:56 -04:00
Steve Klabnik
36190ef91d
Rollup merge of #28466 - baskerville:trpl-heap-highest-addr, r=steveklabnik
...
r? @steveklabnik
2015-09-17 17:06:55 -04:00
Steve Klabnik
cc664f1f44
Rollup merge of #28451 - dagnir:osx-req-wording, r=steveklabnik
...
Using "later" in this context makes more sense than "greater" so it's been changed to match the Linux requirement above it rather than the other way around.
2015-09-17 17:06:55 -04:00
Steve Klabnik
ae3c60d06f
Rollup merge of #28435 - apasel422:issue-24533, r=nikomatsakis
...
Closes #24533 .
2015-09-17 17:06:55 -04:00
Steve Klabnik
40c45ac86a
Rollup merge of #28422 - christopherdumas:label_code, r=steveklabnik
2015-09-17 17:06:54 -04:00
Steve Klabnik
eeca6a430b
Rollup merge of #28314 - tbu-:pr_atomics_are_send, r=brson
2015-09-17 17:06:54 -04:00
Steve Klabnik
54063e330a
Rollup merge of #28276 - jackwilsonv:patch-5, r=Manishearth
2015-09-17 17:06:54 -04:00
Tshepang Lekhonkhobe
a3305f87c1
reference: actual keywords feel more appropriate
2015-09-17 22:55:40 +02:00
Tshepang Lekhonkhobe
22fc5f480d
reference: mark that up to make it more clear it is a keyword
2015-09-17 22:52:39 +02:00
Tshepang Lekhonkhobe
553a2f1ead
doc: follow idiom in code snippet
2015-09-17 22:13:05 +02:00
bors
a06812f57b
Auto merge of #28459 - apasel422:tests, r=alexcrichton
...
Closes #23543 .
Closes #23544 .
2015-09-17 19:50:31 +00:00
Tshepang Lekhonkhobe
25cc001c19
doc: no need to mention the method by name
...
It's clear it's the one being documented
2015-09-17 21:46:47 +02:00
bors
24fdaedaff
Auto merge of #28457 - VHaravy:test-run-pass-x86stdcall2, r=huonw
...
Type `HANDLE` is defined on Windows as `PVOID`. Test `run-pass/x86stdcall2` defined it as `u32` that caused access violation in `catch_panic` routine at the line:
```
try!(unwind::try(move || *result = Some(f())))
```
The original failure is as follows:
```
---- [run-pass] run-pass/x86stdcall2.rs stdout ----
error: test run failed!
status: exit code: -1073741819
command: PATH="x86_64-pc-windows-msvc/stage2/bin/rustlib/x86_64-pc-windows-msvc/lib;D:\Sources\Rust\x86_64-pc-windows-msvc\stage2\bin;C:\MSYS2\mingw64\bin;C:\MSYS2\usr\local\bin;C:\MSYS2\usr\bin;C:\MSYS2\usr\bin;C:\Program Files\Python 3;C:\Program Files\Python 3\Scripts;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit;C:\Program Files\SlikSvn\bin;C:\Program Files\System Tools;C:\Program Files (x86)\System Tools;C:\Program Files\Vim\vim74;C:\Program Files\Rust\bin;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\MiKTeX\miktex\bin\x64;C:\Program Files (x86)\Pandoc;C:\Program Files\LLVM\bin;C:\Program Files\KDiff3;C:\Program Files\Git\cmd;C:\Users\Vitali\AppData\Local\atom\bin;C:\MSYS2\usr\bin\site_perl;C:\MSYS2\usr\bin\vendor_perl;C:\MSYS2\usr\bin\core_perl" x86_64-pc-windows-msvc/test/run-pass\x86stdcall2.stage2-x86_64-pc-windows-msvc.exe
stdout:
------------------------------------------
------------------------------------------
stderr:
------------------------------------------
------------------------------------------
thread '[run-pass] run-pass/x86stdcall2.rs' panicked at 'explicit panic', D:/Sources/Rust/src/compiletest\runtest.rs:1501
```
P.S. I compiled rust for `x86_64-pc-windows-msvc`.
2015-09-17 18:06:33 +00:00
Bastien Dejean
6d2cb6c688
trpl: Fix off-by-one highest memory address
2015-09-17 18:53:01 +02:00
bors
8ea2198215
Auto merge of #28421 - alexcrichton:msvc-rmake, r=alexcrichton
...
Work carried over from #27938
2015-09-17 16:22:46 +00:00
Andrew Paseltiner
519527b1f5
Remove empty test files
...
It is likely that these were committed by mistake.
2015-09-17 12:04:34 -04:00
Alex Crichton
0675dffac4
rmake: Get all tests passing on MSVC
2015-09-17 08:40:33 -07:00
bors
2be0d0ad92
Auto merge of #28428 - dotdash:same_adjust, r=nikomatsakis
...
Currently, we're generating adjustments, for example, to get from &[u8]
to &[u8], which is unneeded and kicks us out of trans_into()
into trans() which means an additional stack slot and copy in the
unoptimized code.
2015-09-17 14:40:59 +00:00
Andrew Paseltiner
83b5370d5d
Add tests for #23543 , #23544
...
Closes #23543 .
Closes #23544 .
2015-09-17 09:33:41 -04:00
Björn Steinbrink
6def06c973
Don't create adjustments from a type to itself
...
Currently, we're generating adjustments, for example, to get from &[u8]
to &[u8], which is unneeded and kicks us out of trans_into() into
trans() which means an additional stack slot and copy in the unoptimized
code.
2015-09-17 15:10:21 +02:00
bors
c9fc4efd24
Auto merge of #28455 - nrc:span-bang, r=alexcrichton
...
I can't see how to test this.
Fixes https://github.com/nrc/rustfmt/issues/320
2015-09-17 12:58:22 +00:00
Vadim Petrochenkov
1599c1675f
Fix code broken by rebase
2015-09-17 15:19:24 +03:00
Vadim Petrochenkov
c3f53d1b12
Resolve prefix in imports with empty braces
2015-09-17 14:13:14 +03:00
Vadim Petrochenkov
357982fae4
Workaround for imports with empty braces
2015-09-17 14:13:13 +03:00
Vadim Petrochenkov
50e42ea9f7
Correctly walk import lists in AST visitors
2015-09-17 14:13:12 +03:00
bors
89faafcd67
Auto merge of #28381 - ebfull:aint-fraid-a-no-ghosts-redux, r=me
...
#27483 redux at Gankro's request.
Fixes #26905 , Closes #28239
r? @nrc
2015-09-17 10:11:23 +00:00
Simonas Kazlauskas
a9cb51cf0c
Fix test expectations because of #28439
2015-09-17 12:47:03 +03:00
Vitali Haravy
7ff85cd216
Correct type definition of HANDLE.
2015-09-17 12:03:27 +03:00
bors
d3fc6e1858
Auto merge of #28454 - GSam:master, r=nrc
...
This is so that the resolution results can be used after analysis, potentially for tool support
2015-09-17 08:28:33 +00:00
Simonas Kazlauskas
f5a99ae7fb
Remove Visibility field from enum variants
...
Followup on #28440
2015-09-17 10:02:59 +03:00
Aleksey Kladov
e3be84c6c8
libsyntax: forbid visibility modifiers for enum variants
...
fixes #28433
2015-09-17 10:02:08 +03:00
bors
6c18dd597f
Auto merge of #28438 - apasel422:issue-22872, r=alexcrichton
...
The original issue was not fixed, but the test passed due to disabled debug assertions.
2015-09-17 05:44:29 +00:00
Nick Cameron
4fbe514985
Fix the span for ! returns
2015-09-17 15:13:51 +12:00
bors
d16129bca5
Auto merge of #28349 - nrc:ast-lints, r=manishearth
...
r? @nikomatsakis, f? @Manishearth
2015-09-17 03:05:56 +00:00
bors
151ffa48c1
Auto merge of #28453 - dinfuehr:patch-4, r=alexcrichton
2015-09-17 01:24:02 +00:00
Garming Sam
61cb1baab1
Add compiler option to keep mtwt tables
...
This is so that the resolution results can be used after analysis, potentially for tool support
2015-09-17 13:09:55 +12:00