Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rolling up PRs in the queue #16141

Closed
wants to merge 27 commits into from
Closed

Conversation

alexcrichton
Copy link
Member

No description provided.

colinvh and others added 11 commits July 31, 2014 07:30
Divide-by-zero before:

```
        leaq    "str\"str\"(1762)"(%rip), %rax
        movq    %rax, 16(%rsp)
        movq    $27, 24(%rsp)
        leaq    "str\"str\"(1542)"(%rip), %rax
        movq    %rax, (%rsp)
        movq    $19, 8(%rsp)
        leaq    16(%rsp), %rdi
        leaq    (%rsp), %rsi
        movl    $32, %edx
        callq   _ZN7failure5fail_20hc04408f955ce60aaqWjE@PLT
```

After:

```
        leaq    .Lconst(%rip), %rdi
        callq   _ZN7failure5fail_20haf918a97c8f7f2bfqWjE@PLT
```

Bounds check before:

```
        leaq    "str\"str\"(1542)"(%rip), %rax
        movq    %rax, 8(%rsp)
        movq    $19, 16(%rsp)
        leaq    8(%rsp), %rdi
        movl    $38, %esi
        movl    $1, %edx
        movl    $1, %ecx
        callq   _ZN7failure17fail_bounds_check20hf4bc3c69e96caf41RXjE@PLT
```

Bounds check after:

```
        leaq    .Lconst2(%rip), %rdi
        movl    $1, %esi
        movl    $1, %edx
        callq   _ZN7failure17fail_bounds_check20h5267276a537a7de22XjE@PLT
```

Size before:

21277995 librustc-4e7c5e5c.s

```
text       data
12554881   6089335
```

Size after:

21247617 librustc-4e7c5e5c.so

```
text       data
12518497   6095748
```
For consistency, just because `fail_` has it.
Our implementation of ebml has diverged from the standard in order
to better serve the needs of the compiler, so it doesn't make much
sense to call what we have ebml anyore. Furthermore, our implementation
is pretty crufty, and should eventually be rewritten into a format
that better suits the needs of the compiler. This patch factors out
serialize::ebml into librbml, otherwise known as the Really Bad
Markup Language. This is a stopgap library that shouldn't be used
by end users, and will eventually be replaced by something better.

[breaking-change]
This initialization should happen unconditionally, but the rtassert! macro is
gated on the ENFORCE_SANITY define

Closes rust-lang#16106
Closes rust-lang#16097 (fix variable name in tutorial)
Closes rust-lang#16100 (More defailbloating)
Closes rust-lang#16104 (Fix deprecation commment on `core::cmp::lexical_ordering`)
Closes rust-lang#16105 (fix formatting in pointer guide table)
Closes rust-lang#16107 (remove serialize::ebml, add librbml)
Closes rust-lang#16108 (Fix heading levels in pointer guide)
Closes rust-lang#16109 (rustrt: Don't conditionally init the at_exit QUEUE)
Closes rust-lang#16111 (hexfloat: Deprecate to move out of the repo)
Closes rust-lang#16113 (Add examples for GenericPath methods.)
Closes rust-lang#16115 (Byte literals!)
Closes rust-lang#16116 (Add a non-regression test for issue rust-lang#8372)
Closes rust-lang#16120 (Deprecate semver)
Closes rust-lang#16124 (Deprecate uuid)
Closes rust-lang#16126 (Deprecate fourcc)
Closes rust-lang#16127 (Remove incorrect example)
Closes rust-lang#16129 (Add note about production deployments.)
Closes rust-lang#16131 (librustc: Don't ICE when trying to subst regions in destructor call.)
Closes rust-lang#16133 (librustc: Don't ICE with struct exprs where the name is not a valid struct.)
Closes rust-lang#16136 (Implement slice::Vector for Option<T> and CVec<T>)
Closes rust-lang#16137 (alloc, arena, test, url, uuid: Elide lifetimes.)
@bors bors closed this Aug 1, 2014
@alexcrichton alexcrichton deleted the rollup branch August 1, 2014 16:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.