Bug 1538419 - Add support for thumbv7neon to target-lexicon. r=froydnj
☠☠ backed out by 67cc4d399e8a ☠ ☠
authorMike Hommey <mh+mozilla@glandium.org>
Mon, 25 Mar 2019 12:39:52 +0000
changeset 466026 c0399366d123b79a32440de4ce27f1ce9f02a4de
parent 466025 030cb27161ee4539c9e0d220e8a3f1812459cccd
child 466027 f4066420a83b4d176b9d5a70fa2a30b8f22f0e9a
push id35758
push userrgurzau@mozilla.com
push dateTue, 26 Mar 2019 09:51:47 +0000
treeherdermozilla-central@4572f6055a6a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersfroydnj
bugs1538419
milestone68.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1538419 - Add support for thumbv7neon to target-lexicon. r=froydnj Differential Revision: https://phabricator.services.mozilla.com/D24596
.cargo/config.in
Cargo.lock
Cargo.toml
third_party/rust/target-lexicon/.cargo-checksum.json
third_party/rust/target-lexicon/Cargo.toml
third_party/rust/target-lexicon/src/targets.rs
--- a/.cargo/config.in
+++ b/.cargo/config.in
@@ -22,10 +22,15 @@ git = "https://github.com/glandium/cc-rs
 branch = "1.0.23-clang-cl-aarch64"
 replace-with = "vendored-sources"
 
 [source."https://github.com/rust-lang-nursery/packed_simd"]
 git = "https://github.com/hsivonen/packed_simd"
 branch = "rust_1_32"
 replace-with = "vendored-sources"
 
+[source."https://github.com/CraneStation/target-lexicon"]
+git = "https://github.com/glandium/target-lexicon"
+branch = "thumbv7neon-v0.2"
+replace-with = "vendored-sources"
+
 [source.vendored-sources]
 directory = '@top_srcdir@/third_party/rust'
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -165,17 +165,17 @@ dependencies = [
 name = "baldrdash"
 version = "0.1.0"
 dependencies = [
  "bindgen 0.43.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "cranelift-codegen 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "cranelift-wasm 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "env_logger 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "target-lexicon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "target-lexicon 0.2.0 (git+https://github.com/glandium/target-lexicon?branch=thumbv7neon-v0.2)",
 ]
 
 [[package]]
 name = "base64"
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -586,17 +586,17 @@ version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cranelift-bforest 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "cranelift-codegen-meta 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "cranelift-entity 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "target-lexicon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "target-lexicon 0.2.0 (git+https://github.com/glandium/target-lexicon?branch=thumbv7neon-v0.2)",
 ]
 
 [[package]]
 name = "cranelift-codegen-meta"
 version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cranelift-entity 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -609,17 +609,17 @@ source = "registry+https://github.com/ru
 
 [[package]]
 name = "cranelift-frontend"
 version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cranelift-codegen 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "target-lexicon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "target-lexicon 0.2.0 (git+https://github.com/glandium/target-lexicon?branch=thumbv7neon-v0.2)",
 ]
 
 [[package]]
 name = "cranelift-wasm"
 version = "0.29.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cast 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -2799,17 +2799,17 @@ dependencies = [
  "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "target-lexicon"
 version = "0.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
+source = "git+https://github.com/glandium/target-lexicon?branch=thumbv7neon-v0.2#b2d4b34509abb3e12b1c93d19b8593d02ddeed76"
 dependencies = [
  "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_json 1.0.26 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "tempdir"
@@ -3694,17 +3694,17 @@ dependencies = [
 "checksum string_cache_codegen 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1eea1eee654ef80933142157fdad9dd8bc43cf7c74e999e369263496f04ff4da"
 "checksum string_cache_shared 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b1884d1bc09741d466d9b14e6d37ac89d6909cbcac41dd9ae982d4d063bbedfc"
 "checksum strsim 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b4d15c810519a91cf877e7e36e63fe068815c678181439f2f29e2562147c3694"
 "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
 "checksum syn 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "91b52877572087400e83d24b9178488541e3d535259e04ff17a63df1e5ceff59"
 "checksum syn 0.14.6 (registry+https://github.com/rust-lang/crates.io-index)" = "4e4b5274d4a0a3d2749d5c158dc64d3403e60554dc61194648787ada5212473d"
 "checksum syn 0.15.24 (registry+https://github.com/rust-lang/crates.io-index)" = "734ecc29cd36e8123850d9bf21dfd62ef8300aaa8f879aabaa899721808be37c"
 "checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
-"checksum target-lexicon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4af5e2227f0b887d591d3724b796a96eff04226104d872f5b3883fcd427d64b9"
+"checksum target-lexicon 0.2.0 (git+https://github.com/glandium/target-lexicon?branch=thumbv7neon-v0.2)" = "<none>"
 "checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6"
 "checksum term 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "fa63644f74ce96fbeb9b794f66aff2a52d601cbd5e80f4b97123e3899f4570f1"
 "checksum term_size 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2b6b55df3198cc93372e85dd2ed817f0e38ce8cc0f22eb32391bfad9c4bf209"
 "checksum termcolor 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "adc4587ead41bf016f11af03e55a624c06568b5a19db4e90fde573d805074f83"
 "checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
 "checksum textwrap 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c0b59b6b4b44d867f1370ef1bd91bfb262bf07bf0ae65c202ea2fbc16153b693"
 "checksum thin-slice 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
 "checksum thin-vec 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "73fdf4b84c65a85168477b7fb6c498e0716bc9487fba24623389ea7f51708044"
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -56,9 +56,10 @@ debug-assertions = false
 panic = "abort"
 codegen-units = 1
 
 [patch.crates-io]
 libudev-sys = { path = "dom/webauthn/libudev-sys" }
 serde_derive = { git = "https://github.com/servo/serde", branch = "deserialize_from_enums9" }
 winapi = { git = "https://github.com/froydnj/winapi-rs", branch = "aarch64" }
 cc = { git = "https://github.com/glandium/cc-rs", branch = "1.0.23-clang-cl-aarch64" }
+target-lexicon = { git = "https://github.com/glandium/target-lexicon", branch = "thumbv7neon-v0.2" }
 packed_simd = { git = "https://github.com/hsivonen/packed_simd", branch = "rust_1_32" }
--- a/third_party/rust/target-lexicon/.cargo-checksum.json
+++ b/third_party/rust/target-lexicon/.cargo-checksum.json
@@ -1,1 +1,1 @@
-{"files":{"Cargo.toml":"0a20947ba69f4f7fbadd6ec6fd2e760b9c8e03144135490b77828cc3e3243919","LICENSE":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","README.md":"89f73d9404c960632bef4cfde9709862dbb510081180318e0be7bf12d18e9da7","build.rs":"c349b503b884c79aef182ba27eeffa51ca439a511d8c6adefa2ed56f80a4530c","examples/misc.rs":"2e7f27fc7b7479b9cf96bdf81b402a6ef4bec71f8ef6f4f39588745b85cb2d3d","src/host.rs":"c4a0aa3364662eb2c585a69c8872d3e380f1b8537b51def6ca582b301993ce0a","src/lib.rs":"72a94fcc6b7f5dd6692cda84974b3ffb50b6c5eb9e2ebed91c6635d102202ced","src/parse_error.rs":"38c0cb21171741faa1c69c931be6a97be658b01de07bcb69aae84e5319b03920","src/targets.rs":"de44ac5ab97d1a036e692b511b2c5423dbf38f8d7ea36437ee3ac79bae3c3f90","src/triple.rs":"d3cdd3be7b18f04511ae59c6156983e4300bc57a3671282c74b2c7e81e699d75"},"package":"4af5e2227f0b887d591d3724b796a96eff04226104d872f5b3883fcd427d64b9"}
\ No newline at end of file
+{"files":{".rustfmt.toml":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",".travis.yml":"e7a5518637394467f13cb084fa7fa75783007815b17ba22d4dee567965d418bb","Cargo.toml":"5dbb0ad2824e20f91e80cc7b3ab2f9f241e8dbeb214c821e65a9add3b3f49045","LICENSE":"268872b9816f90fd8e85db5a28d33f8150ebb8dd016653fb39ef1f94f2686bc5","README.md":"89f73d9404c960632bef4cfde9709862dbb510081180318e0be7bf12d18e9da7","build.rs":"c349b503b884c79aef182ba27eeffa51ca439a511d8c6adefa2ed56f80a4530c","examples/misc.rs":"2e7f27fc7b7479b9cf96bdf81b402a6ef4bec71f8ef6f4f39588745b85cb2d3d","src/host.rs":"c4a0aa3364662eb2c585a69c8872d3e380f1b8537b51def6ca582b301993ce0a","src/lib.rs":"72a94fcc6b7f5dd6692cda84974b3ffb50b6c5eb9e2ebed91c6635d102202ced","src/parse_error.rs":"38c0cb21171741faa1c69c931be6a97be658b01de07bcb69aae84e5319b03920","src/targets.rs":"4f6585736061118e61c857908b8f7c539a48641c7233f7cfc856e9c94e4ffa34","src/triple.rs":"d3cdd3be7b18f04511ae59c6156983e4300bc57a3671282c74b2c7e81e699d75"},"package":null}
\ No newline at end of file
--- a/third_party/rust/target-lexicon/Cargo.toml
+++ b/third_party/rust/target-lexicon/Cargo.toml
@@ -1,42 +1,26 @@
-# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
-#
-# When uploading crates to the registry Cargo will automatically
-# "normalize" Cargo.toml files for maximal compatibility
-# with all versions of Cargo and also rewrite `path` dependencies
-# to registry (e.g. crates.io) dependencies
-#
-# If you believe there's an error in this file please file an
-# issue against the rust-lang/cargo repository. If you're
-# editing this file be aware that the upstream Cargo.toml
-# will likely look very different (and much more reasonable)
-
 [package]
 name = "target-lexicon"
 version = "0.2.0"
 authors = ["Dan Gohman <sunfish@mozilla.com>"]
 description = "Targeting utilities for compilers and related tools"
 documentation = "https://docs.rs/target-lexicon/"
 readme = "README.md"
 keywords = ["target", "host", "triple", "compiler", "jit"]
 categories = ["no-std"]
 license = "Apache-2.0 WITH LLVM-exception"
 repository = "https://github.com/CraneStation/target-lexicon"
-[dependencies.failure]
-version = "0.1.3"
-features = ["derive"]
-default-features = false
 
-[dependencies.failure_derive]
-version = "0.1.3"
-default-features = false
-[build-dependencies.serde_json]
-version = "1.0"
+[dependencies]
+failure = { version = "0.1.3", default-features = false, features = ["derive"] }
+failure_derive = { version = "0.1.3", default-features = false }
+
+[build-dependencies]
+serde_json = "1.0"
 
 [features]
 default = ["std"]
 std = []
-[badges.maintenance]
-status = "passively-maintained"
 
-[badges.travis-ci]
-repository = "CraneStation/target-lexicon"
+[badges]
+maintenance = { status = "passively-maintained" }
+travis-ci = { repository = "CraneStation/target-lexicon" }
--- a/third_party/rust/target-lexicon/src/targets.rs
+++ b/third_party/rust/target-lexicon/src/targets.rs
@@ -32,16 +32,17 @@ pub enum Architecture {
     Riscv64,
     S390x,
     Sparc,
     Sparc64,
     Sparcv9,
     Thumbv6m,
     Thumbv7em,
     Thumbv7m,
+    Thumbv7neon,
     Wasm32,
     X86_64,
 }
 
 /// The "vendor" field, which in practice is little more than an arbitrary
 /// modifier.
 #[derive(Copy, Clone, Debug, PartialEq, Eq, Hash)]
 #[allow(missing_docs)]
@@ -134,16 +135,17 @@ impl Architecture {
             | Architecture::Mipsel
             | Architecture::Msp430
             | Architecture::Powerpc64le
             | Architecture::Riscv32
             | Architecture::Riscv64
             | Architecture::Thumbv6m
             | Architecture::Thumbv7em
             | Architecture::Thumbv7m
+            | Architecture::Thumbv7neon
             | Architecture::Wasm32
             | Architecture::X86_64 => Ok(Endianness::Little),
             Architecture::Mips
             | Architecture::Mips64
             | Architecture::Powerpc
             | Architecture::Powerpc64
             | Architecture::S390x
             | Architecture::Sparc
@@ -167,16 +169,17 @@ impl Architecture {
             | Architecture::I586
             | Architecture::I686
             | Architecture::Mipsel
             | Architecture::Riscv32
             | Architecture::Sparc
             | Architecture::Thumbv6m
             | Architecture::Thumbv7em
             | Architecture::Thumbv7m
+            | Architecture::Thumbv7neon
             | Architecture::Wasm32
             | Architecture::Mips
             | Architecture::Powerpc => Ok(PointerWidth::U32),
             Architecture::Aarch64
             | Architecture::Mips64el
             | Architecture::Powerpc64le
             | Architecture::Riscv64
             | Architecture::X86_64
@@ -231,16 +234,17 @@ impl fmt::Display for Architecture {
             Architecture::Riscv64 => "riscv64",
             Architecture::S390x => "s390x",
             Architecture::Sparc => "sparc",
             Architecture::Sparc64 => "sparc64",
             Architecture::Sparcv9 => "sparcv9",
             Architecture::Thumbv6m => "thumbv6m",
             Architecture::Thumbv7em => "thumbv7em",
             Architecture::Thumbv7m => "thumbv7m",
+            Architecture::Thumbv7neon => "thumbv7neon",
             Architecture::Wasm32 => "wasm32",
             Architecture::X86_64 => "x86_64",
         };
         f.write_str(s)
     }
 }
 
 impl FromStr for Architecture {
@@ -271,16 +275,17 @@ impl FromStr for Architecture {
             "riscv64" => Architecture::Riscv64,
             "s390x" => Architecture::S390x,
             "sparc" => Architecture::Sparc,
             "sparc64" => Architecture::Sparc64,
             "sparcv9" => Architecture::Sparcv9,
             "thumbv6m" => Architecture::Thumbv6m,
             "thumbv7em" => Architecture::Thumbv7em,
             "thumbv7m" => Architecture::Thumbv7m,
+            "thumbv7neon" => Architecture::Thumbv7neon,
             "wasm32" => Architecture::Wasm32,
             "x86_64" => Architecture::X86_64,
             _ => return Err(()),
         })
     }
 }
 
 impl fmt::Display for Vendor {