Skip to content

Fix pairs of doubles using an illegal <8 x i8> vector. - #41206

Merged
bors merged 1 commit into
rust-lang:masterfrom
eddyb:avoid-illegal-vectors
Apr 12, 2017
Merged

Fix pairs of doubles using an illegal <8 x i8> vector.#41206
bors merged 1 commit into
rust-lang:masterfrom
eddyb:avoid-illegal-vectors

Conversation

@eddyb

@eddybeddyb commented Apr 10, 2017

Copy link
Copy Markdown
Contributor

Accidentally introduced in #40658 and discovered in some Objective-C bindings (returning NSPoint).
Turns out LLVM will widen element types of illegal vectors instead of increasing element count, i.e. it will zero-extend <8 x i8> to <8 x i16>, interleaving the bytes, instead of using the first 8 of <16 x i8>.

@rust-highfive

Copy link
Copy Markdown
Contributor

r? @pnkfelix

(rust_highfive has picked a reviewer for you, use r? to override)

@eddyb
eddybforce-pushed the avoid-illegal-vectors branch from 4b4dc1e to 0303a33CompareApril 11, 2017 08:33
@eddyb

Copy link
Copy Markdown
ContributorAuthor

@bors r=nagisa

@bors

bors commented Apr 11, 2017

Copy link
Copy Markdown
Collaborator

📌 Commit 0303a33 has been approved by nagisa

@bors

bors commented Apr 11, 2017

Copy link
Copy Markdown
Collaborator

⌛ Testing commit 0303a33 with merge fadf6ca...

@bors

bors commented Apr 11, 2017

Copy link
Copy Markdown
Collaborator

💔 Test failed - status-appveyor

@TimNN

Copy link
Copy Markdown
Contributor

frewsxcv added a commit to frewsxcv/rust that referenced this pull request Apr 12, 2017
Fix pairs of doubles using an illegal <8 x i8> vector.
Accidentally introduced in rust-lang#40658 and discovered in some Objective-C bindings (returning `NSPoint`).
Turns out LLVM will widen element types of illegal vectors instead of increasing element count, i.e. it will zero-extend `<8 x i8>` to `<8 x i16>`, interleaving the bytes, instead of using the first 8 of `<16 x i8>`.
@frewsxcvfrewsxcv mentioned this pull request Apr 12, 2017
TimNN added a commit to TimNN/rust that referenced this pull request Apr 12, 2017
Fix pairs of doubles using an illegal <8 x i8> vector.
Accidentally introduced in rust-lang#40658 and discovered in some Objective-C bindings (returning `NSPoint`).
Turns out LLVM will widen element types of illegal vectors instead of increasing element count, i.e. it will zero-extend `<8 x i8>` to `<8 x i16>`, interleaving the bytes, instead of using the first 8 of `<16 x i8>`.
@TimNNTimNN mentioned this pull request Apr 12, 2017
bors added a commit that referenced this pull request Apr 12, 2017
Rollup of 9 pull requests
- Successful merges: #41063, #41087, #41141, #41166, #41183, #41205, #41206, #41232, #41243
- Failed merges:
@bors
bors merged commit 0303a33 into rust-lang:masterApr 12, 2017
@eddyb
eddyb deleted the avoid-illegal-vectors branch April 12, 2017 16:07
Sign up for freeto 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.

5 participants

@eddyb@rust-highfive@bors@TimNN@pnkfelix