about summary refs log tree commit diff
path: root/src/etc
AgeCommit message (Collapse)AuthorLines
2017-10-16rustbuild: Allow setting rls/rustfmt to "broken"Alex Crichton-0/+14
This commit enables configuring the RLS/rustfmt tools to the "broken" state and actually get it past CI. The main changes here were to update all dist-related code to handle the situation where the RLS isn't available. This in turn involved a homegrown preprocessor-like-function to edit the configuration files we pass to the various combined installer tools.
2017-10-10Rollup merge of #45071 - tromey:use-gdb-lazy-string, r=michaelwoeristerSteve Klabnik-4/+11
Implement display_hint in gdb pretty printers A few pretty-printers were returning a quoted string from their to_string method. It's preferable in gdb to return a lazy string and to let gdb handle the display by having a "display_hint" method that returns "string" -- it lets gdb settings (like "set print ...") work, it handles corrupted strings a bit better, and it passes the information along to IDEs.
2017-10-08debuginfo-test: Fix #45086.kennytm-1/+1
LLDB's output may be None instead of '', and that will cause type mismatch when normalize_whitespace() expects a string instead of None. This commit simply ensures we do pass '' even if the output is None.
2017-10-06Implement display_hint in gdb pretty printersTom Tromey-4/+11
A few pretty-printers were returning a quoted string from their to_string method. It's preferable in gdb to return a lazy string and to let gdb handle the display by having a "display_hint" method that returns "string" -- it lets gdb settings (like "set print ...") work, it handles corrupted strings a bit better, and it passes the information along to IDEs.
2017-10-03Auto merge of #44949 - QuietMisdreavus:rustdoctest-dirs, r=nikomatsakisbors-0/+18
let htmldocck.py check for directories Since i messed this up during https://github.com/rust-lang/rust/pull/44613, i wanted to codify this into the rustdoc tests to make sure that doesn't happen again.
2017-10-02Auto merge of #44885 - lu-zero:master, r=alexcrichtonbors-0/+70
More Altivec Intrinsics Float-specific intrinsics
2017-09-30let htmldocck.py check for directoriesQuietMisdreavus-0/+18
2017-09-27Add support for Vector Negative Multiply Subtract Float on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Truncate on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Round on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Ceiling on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Reciprocal Square Root Estimate Float on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Reciprocal Estimate Float on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Log2 Estimate Float on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Floor on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector 2 Raised to the Exponent Estimate Float on PowerPCLuca Barbato-0/+7
2017-09-27Add support for Vector Multiply Add Float on PowerPCLuca Barbato-0/+7
2017-09-06Rollup merge of #44351 - lu-zero:master, r=nikomatsakisMark Simulacrum-0/+63
More PowerPC Altivec intrinsics
2017-09-05Add support for Vector Sum Saturated on PowerPCLuca Barbato-0/+7
2017-09-05Add support for Vector Sum Across Partial 1/4 Saturated on PowerPCLuca Barbato-0/+14
2017-09-05Add support for Vector Sum Across Partial 1/2 Saturated on PowerPCLuca Barbato-0/+7
2017-08-31Add support for Vector Multiply Sum Saturated on PowerPCLuca Barbato-0/+7
2017-08-31Add support for Vector Multiply Sum on PowerPCLuca Barbato-0/+21
2017-08-31Add support for Vector Multiply Add Saturated on PowerPCLuca Barbato-0/+7
2017-08-26Allow htmldocck to run using Python 3.kennytm-13/+20
2017-08-16Add support for Vector Unpack High and Low on PowerPCLuca Barbato-0/+14
2017-08-16Add support for Vector Pack Pixel on PowerPCLuca Barbato-0/+7
The llvm intrinsic uses signed integers.
2017-08-16Add support for Vector Pack Saturated Unsigned on PowerPCLuca Barbato-0/+7
2017-08-16Add support for Vector Pack Saturated on PowerPCLuca Barbato-0/+7
2017-08-07Add support for Vector Average on PowerPCLuca Barbato-0/+7
2017-08-07Add support for Vector Multiply Odd on PowerPCLuca Barbato-0/+7
2017-08-07Add support for Vector Multiply Even on PowerPCLuca Barbato-0/+7
2017-08-07Narrow or widen the vector element without changing the vector sizeLuca Barbato-1/+9
2017-08-06Add support for Vector Add Carryout on PowerPCLuca Barbato-0/+7
2017-08-06Add support for Vector Add Saturated on PowerPCLuca Barbato-0/+7
2017-08-04Add support for Vector Subtract Carryout on PowerPCLuca Barbato-0/+7
2017-08-04Add support for Vector Subtract Saturated on PowerPCLuca Barbato-0/+7
2017-07-29Auto merge of #43492 - lu-zero:master, r=alexcrichtonbors-2/+58
More Altivec Intrinsics
2017-07-28Auto merge of #43221 - MaulingMonkey:natvis-improvements, r=michaelwoeristerbors-2/+26
Embed MSVC .natvis files into .pdbs and mangle debuginfo for &str, *T, and [T]. No idea if these changes are reasonable - please feel free to suggest changes/rewrites. And these are some of my first real commits to any rust codebase - *don't* be gentle, and nitpick away, I need to learn! ;) ### Overview Embedding `.natvis` files into `.pdb`s allows MSVC (and potentially other debuggers) to automatically pick up the visualizers without having to do any additional configuration (other than to perhaps add the relevant .pdb paths to symbol search paths.) The native debug engine for MSVC parses the type names, making various C++ish assumptions about what they mean and adding various limitations to valid type names. `&str` cannot be matched against a visualizer, but if we emit `str&` instead, it'll be recognized as a reference to a `str`, solving the problem. `[T]` is similarly problematic, but emitting `slice<T>` instead works fine as it looks like a template. I've been unable to get e.g. `slice<u32>&` to match visualizers in VS2015u3, so I've gone with `str*` and `slice<u32>*` instead. ### Possible Issues * I'm not sure if `slice<T>` is a great mangling for `[T]` or if I should worry about name collisions. * I'm not sure if `linker.rs` is the right place to be enumerating natvis files. * I'm not sure if these type name mangling changes should actually be MSVC specific. I recall seeing gdb visualizer tests that might be broken if made more general? I'm hesitant to mess with them without a gdb install. But perhaps I'm just wracking up technical debt. Should I try `pacman -S mingw-w64-x86_64-gdb` and to make things consistent? * I haven't touched `const` / `mut` yet, and I'm worried MSVC might trip up on `mut` or their placement. * I may like terse oneliners too much. * I don't know if there's broader implications for messing with debug type names here. * I may have been mistaken about bellow test failures being ignorable / unrelated to this changelist. ### Test Failures on `x86_64-pc-windows-gnu` ``` ---- [debuginfo-gdb] debuginfo-gdb\associated-types.rs stdout ---- thread '[debuginfo-gdb] debuginfo-gdb\associated-types.rs' panicked at 'gdb not available but debuginfo gdb debuginfo test requested', src\tools\compiletest\src\runtest.rs:48:16 note: Run with `RUST_BACKTRACE=1` for a backtrace. [...identical panic causes omitted...] ---- [debuginfo-gdb] debuginfo-gdb\vec.rs stdout ---- thread '[debuginfo-gdb] debuginfo-gdb\vec.rs' panicked at 'gdb not available but debuginfo gdb debuginfo test requested', src\tools\compiletest\src\runtest.rs:48:16 ``` ### Relevant Issues * https://github.com/rust-lang/rust/issues/40460 Metaissue for Visual Studio debugging Rust * https://github.com/rust-lang/rust/issues/36503 Investigate natvis for improved msvc debugging * https://github.com/PistonDevelopers/VisualRust/issues/160 Debug visualization of Rust data structures ### Pretty Pictures ![Collapsed Watch Window](https://user-images.githubusercontent.com/75894/28180998-e44c7516-67bb-11e7-8b48-d4f9605973ae.png) ![Expanded Watch Window](https://user-images.githubusercontent.com/75894/28181000-e8da252e-67bb-11e7-96b8-d613310c04dc.png)
2017-07-27Add support for Vector Minimum on PowerPCLuca Barbato-0/+7
2017-07-27Add support for Vector Maximum on PowerPCLuca Barbato-0/+7
2017-07-26Add Vector Compare Greater-ThanLuca Barbato-0/+16
2017-07-26Add Vector Compare EqualLuca Barbato-2/+13
2017-07-26Add Vector Compare Bounds Floating-PointLuca Barbato-1/+9
2017-07-25Add mradds to the powerpc intrinsicsLuca Barbato-0/+7
2017-07-24Add support for PowerPC Altivec/VSX intrinsicsLuca Barbato-0/+21
2017-07-21*.natvis: Use s8 postfixes to correctly interpret rust strings as UTF-8.MaulingMonkey-4/+4
2017-07-13Modify type names on MSVC to make strings and slices .natvis compatible.MaulingMonkey-0/+24
2017-06-13Merge crate `collections` into `alloc`Murarth-8/+8
2017-06-09Auto merge of #42278 - gentoo90:gdb-pretty-printers, r=michaelwoeristerbors-5/+48
Fix GDB pretty-printer for tuples and pointers Names of children should not be the same, because GDB uses them to distinguish the children. |Before|After| |---|---| |![tuples_before](https://cloud.githubusercontent.com/assets/1297574/26527639/5d6cf10e-43a0-11e7-9498-abfcddb08055.png)|![tuples_after](https://cloud.githubusercontent.com/assets/1297574/26527655/9699233a-43a0-11e7-83c6-f58f713b51a0.png)| `main.rs` ```rust enum Test { Zero, One(i32), Two(i32, String), Three(i32, String, Vec<String>), } fn main() { let tuple = (1, 2, "Asdfgh"); let zero = Test::Zero; let one = Test::One(10); let two = Test::Two(42, "Qwerty".to_owned()); let three = Test::Three(9000, "Zxcvbn".to_owned(), vec!["lorem".to_owned(), "ipsum".to_owned(), "dolor".to_owned()]); println!(""); // breakpoint here } ``` `launch.json` ```json { "version": "0.2.0", "configurations": [ { "type": "gdb", "request": "launch", "gdbpath": "rust-gdb", "name": "Launch Program", "valuesFormatting": "prettyPrinters", //this requires plugin Native Debug >= 0.20.0 "target": "./target/debug/test_pretty_printers", "cwd": "${workspaceRoot}" } ] } ```