Skip to content

Commit

Permalink
Auto merge of #51828 - kennytm:no-simd-swap-for-mac, r=<try>
Browse files Browse the repository at this point in the history
[DO NOT MERGE] Disable SIMD in mem::swap on macOS

Tries to address the various TLS segfault on macOS 10.10.
  • Loading branch information
bors committed Jun 26, 2018
2 parents 9cc3d44 + f2422bd commit 77a8ed9
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 4 deletions.
6 changes: 3 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,13 @@ matrix:
if: type = pull_request OR branch = auto

- env: IMAGE=dist-x86_64-linux DEPLOY=1
if: branch = try OR branch = auto
if: branch = auto

# "alternate" deployments, these are "nightlies" but have LLVM assertions
# turned on, they're deployed to a different location primarily for
# additional testing.
- env: IMAGE=dist-x86_64-linux DEPLOY_ALT=1 CI_JOB_NAME=dist-x86_64-linux-alt
if: branch = try OR branch = auto
if: branch = auto

- env: >
RUST_CHECK_TARGET=dist
Expand Down Expand Up @@ -105,7 +105,7 @@ matrix:
CI_JOB_NAME=dist-x86_64-apple
os: osx
osx_image: xcode9.3-moar
if: branch = auto
if: branch = try OR branch = auto
# Linux builders, remaining docker images
- env: IMAGE=arm-android
Expand Down
4 changes: 3 additions & 1 deletion src/libcore/ptr.rs
Original file line number Diff line number Diff line change
Expand Up @@ -194,9 +194,11 @@ unsafe fn swap_nonoverlapping_bytes(x: *mut u8, y: *mut u8, len: usize) {
// Haswell E processors. LLVM is more able to optimize if we give a struct a
// #[repr(simd)], even if we don't actually use this struct directly.
//
// FIXME repr(simd) broken on emscripten and redox
// FIXME repr(simd) broken on emscripten and redox and macOS
// It's also broken on big-endian powerpc64 and s390x. #42778
// It's also broken on macOS 10.10. #51794/#51758/#48866/#44056
#[cfg_attr(not(any(target_os = "emscripten", target_os = "redox",
target_os = "macos",
target_endian = "big")),
repr(simd))]
struct Block(u64, u64, u64, u64);
Expand Down

0 comments on commit 77a8ed9

Please sign in to comment.