bors
5a7773a180
Auto merge of #35100 - GuillaumeGomez:rollup, r=GuillaumeGomez
...
Rollup of 7 pull requests
- Successful merges: #34258 , #34894 , #35050 , #35062 , #35066 , #35072 , #35087
- Failed merges:
2016-07-29 03:28:01 -07:00
Guillaume Gomez
5f5fdf64f1
Rollup merge of #35103 - brettcannon:patch-1, r=Manishearth
...
Try to clear up some awkward wording
2016-07-29 11:57:54 +02:00
Guillaume Gomez
d69161c119
Rollup merge of #35087 - GuillaumeGomez:fs_docs, r=steveklabnik
...
Fs docs
Fixes #29356 .
r? @steveklabnik
2016-07-29 11:57:54 +02:00
Guillaume Gomez
3f06bf9afb
Rollup merge of #35072 - munyari:assert_debug, r=steveklabnik
...
Update docs for assert! and debug_assert!
Refer to #34455
2016-07-29 11:57:54 +02:00
Guillaume Gomez
01505a3311
Rollup merge of #35066 - vadimcn:fix-typos, r=apasel422
...
Fix typos
r? @steveklabnik
2016-07-29 11:57:54 +02:00
Guillaume Gomez
41c8d3f630
Rollup merge of #35062 - frewsxcv:chars-as-str, r=GuillaumeGomez
...
Add documentation example for `str::Chars::as_str`.
None
2016-07-29 11:57:53 +02:00
Guillaume Gomez
72d1d06692
Rollup merge of #35050 - knight42:improve-fmt-doc, r=steveklabnik
...
More intuitive explantion of strings formatting
2016-07-29 11:57:53 +02:00
Guillaume Gomez
679f88d345
Rollup merge of #34258 - durka:patch-25, r=steveklabnik
...
book/ffi: nullable pointer cleanup
Expand the "nullable pointer optimization" section with a code example. Fixes #34250 .
I also noticed that many of the examples use the libc crate just for types such as `c_char` and `c_int`, which are now available through `std::os::raw`. I changed the ones that don't need to rely on libc. I'm glad to revert that part of the commit if it's unwanted churn.
2016-07-29 11:57:53 +02:00
Michael Woerister
415fde498a
intravisit: Fold functionality of IdVisitor into the regular Visitor.
2016-07-29 04:55:31 -04:00
Wang Xuerui
2a41b31a88
syntax_ext: format: fix ICE with bad named arguments
2016-07-29 16:40:10 +08:00
Jan-Erik Rediger
7c0cd30c4b
Update LLVM again
2016-07-29 10:29:59 +02:00
Alex Crichton
52430727cd
test: Fix a test on MSVC
...
Apparently MSVC now has namespaces in backtraces!
2016-07-29 10:29:59 +02:00
Jan-Erik Rediger
f38762a881
[LLVM-3.9] Use llvm-3.9 branch
2016-07-29 10:29:59 +02:00
Vladimir Vukicevic
330dd39bb2
Remove NO_FILE_METADATA; always use unknown_file_metadata instead of passing 0
2016-07-29 10:29:59 +02:00
Alex Crichton
2492d24baa
llvm: Remove no longer existent LLVMAddTargetData binding
2016-07-29 10:29:59 +02:00
Alex Crichton
0509be1f6b
Update parsing llvm-config output
...
Now it prints full paths on MSVC, but we're only interested in path names
2016-07-29 10:29:59 +02:00
Alex Crichton
75bcda4cf1
rustc: Update LLVM to the LLVM 3.9 release branch
...
The 3.9 release of LLVM isn't out yet, but this moves us onto that branch to
start tracking it.
2016-07-29 10:29:59 +02:00
Alex Crichton
5fa55781bd
test: Remove the execution-engine test
...
We don't actually officially support this at all, and the execution engine
support in LLVM we've had to gut as it's not compiling on MinGW, so just delete
this test for now.
2016-07-29 10:29:59 +02:00
Alex Crichton
e8f76661f1
rustc: Fix data-layout for AArch64 targets
...
Also relax the assertion whenever we have a custom LLVM root as LLVM may
disagree about exact specifics.
2016-07-29 10:29:44 +02:00
Alex Crichton
d851428cc3
configure: Fix grep invocation for llvm-mc argument
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
a36595ed14
Force check of error
...
The passed error needs to be checked.
Otherwise it will force an abort when it is deconstructed, but a
success value.
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
2c16e24643
Use C type when passing value to LLVM pass
...
Previously the C type LLVMRelocMode (available as RelocMode in Rust)
was passed as is to the function.
However createTargetMachine expects a Reloc::Model, which is an enum
just one value short.
Additionally, the function was marked as requiring Reloc::Model in the
C code, but RelocMode on the Rust-side.
We now use the correct C type LLVMRelocMode and convert it to an
Optional<Reloc::Model> as expected by the createTargetMachine call the
same the original LLVMCreateTargetMachine function does.
See
c9b262bfbd/lib/Target/TargetMachineC.cpp (L104-L121)
This was found by @eddyb.
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
079db4f971
Use correct error handling type
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
dc7076b52e
[LLVM-3.9] Pass correct relocation model flag
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
2c92756dde
Upgrade llvm
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
ad262d54dc
Update compiler-rt
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
09c3f33ec2
Flip LLVM verion check clause
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
f439aeef07
[LLVM-3.9] Use old way of getting next child
...
This was changed back in
https://github.com/rust-lang/llvm/commit/aacf2fbf
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
d0e5aa4820
Upgrade compiler-rt
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
2bcb2b8990
Upgrade LLVM to include std::thread patch
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
1798c1aa59
Refactor determining of relocation model into methods
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
1bc0447260
[LLVM-3.9] Maintain backward compatibility in Archiver
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
deafab19be
[LLVM-3.9] Increase PIELevel
...
Previously, we had a PositionIndependentExecutable, now we simply
choose the highest level. This should be equivalent.
🍰
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
12ccff99bf
Use relative path to type
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
9e706f90cb
[LLVM-3.9] Configure PIE at the module level instead of compilation unit level
...
This was deleted here[1] which appears to be replaced by this[2]
which is a new setPIELevel function on the LLVM module itself.
[1]: http://reviews.llvm.org/D19753
[2]: http://reviews.llvm.org/D19671
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
dbb4178f4e
[LLVM-3.9] Update return type for Archive::create
...
Changed in
0b21d88fd3
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
8433f9bb33
[LLVM-3.9] Replace NewArchiveIterator with NewArchiveMember
...
The new NewArchiveMember is simpler and requires less context,
according to upstream.
This was changed in http://reviews.llvm.org/D21721
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
5b44e10fb7
[LLVM-3.9] Preserve certain functions when internalizing
...
This makes sure to still use the old way for older LLVM versions.
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
6ed5db8d35
[LLVM-3.9] Specify that we are using the legacy interface
...
LLVM pass manager infrastructure is currently getting rewritten to be
more flexible, but the rewrite isn't complete yet.
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
fba1f8f123
[LLVM-3.9] Setup the compile unit information immediately
...
Since LLVM reversed the order of the debug info graphs, we need to have
a compile unit that exists *before* any functions (`DISubprogram`s) are
created. This allows the LLVM debug info builder to automatically link
the functions to the compile unit.
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
7420874a97
[LLVM-3.9] Rename custom methods to Rust-specific ones
2016-07-29 10:29:44 +02:00
Jan-Erik Rediger
d22a9a2940
Upgrade to rust-llvm-2016-07-09
2016-07-29 10:29:44 +02:00
bors
1523a5480a
Auto merge of #34980 - cardoe:expose-target-options, r=alexcrichton
...
Convert built-in targets to JSON
Convert the built-in targets to JSON to ensure that the JSON parser is always fully featured. This follows on #32988 and #32847 . The PR includes a number of extra commits that are just intermediate changes necessary for bisectibility and the ability to prove correctness of the change.
2016-07-28 23:18:52 -07:00
Corey Farwell
f459e801fd
Rewrite collections::LinkedList::append
doc example.
2016-07-28 22:09:31 -04:00
Brett Cannon
3563e400cc
Try to clear up some awkward wording
2016-07-28 19:02:25 -07:00
bors
d9a911d236
Auto merge of #34967 - TimNN:mipsel-musl-soft-float, r=alexcrichton
...
switch mipsel-musl to soft float
Closes #34922 .
r? @alexcrichton
2016-07-28 18:31:54 -07:00
Tobias Bucher
bb6c27e74d
Escape the unmatched surrogates with lower-case hexadecimal numbers
...
It's done the same way for the rest of the codepoint escapes.
2016-07-29 00:52:03 +02:00
bors
54c0dcfd63
Auto merge of #34956 - nikomatsakis:incr-comp-o-files, r=mw
...
Enable reuse of `.o` files if nothing has changed
This PR completes a first "spike" for incremental compilation by enabling us to reuse `.o` files when nothing has changed. When in incr. mode, we will save `.o` files into the temporary directory, then copy them back out again if they are still valid. The code is still a bit rough but it does seem to work. =)
r? @michaelwoerister
Fixes #34036
Fixes #34037
Fixes #34038
2016-07-28 14:17:54 -07:00
Niko Matsakis
42cd5d4ee2
make it possible to track where hash diverges
2016-07-28 15:39:34 -04:00
Niko Matsakis
e359147d12
hash def-path's better
...
actually we shouldn't even hash nested items at all, but that is
addressed in a followup PR
2016-07-28 15:39:02 -04:00