Commit Graph

  • 2ba1ef24ff Test is_str_bidi(). Henri Sivonen 2018-01-15 20:40:04 +02:00
  • 7b79dba642 Mark some branches unlikely(). Henri Sivonen 2018-01-15 16:53:48 +02:00
  • cc902eaebc Avoid UTF-8 math in is_str_bidi(). Henri Sivonen 2018-01-15 15:27:43 +02:00
  • f1dd357a24 Avoid ignoring first code unit in by-unit checks when not aligned. Henri Sivonen 2018-01-15 14:39:16 +02:00
  • bece18ff50 Revert simd_is_latin1(). Henri Sivonen 2018-01-15 14:37:55 +02:00
  • 0b24a5a2b6 Simplify alignment loop. Henri Sivonen 2018-01-15 12:19:23 +02:00
  • 144802e0db SIMD-accelerate is_str_latin1(). Henri Sivonen 2018-01-15 11:57:15 +02:00
  • 7e6a63b95f Add lib.rs changes; remove TODOs. Henri Sivonen 2018-01-15 11:16:15 +02:00
  • 08b3ff80ad Rearrange bidi checks. Henri Sivonen 2018-01-15 10:47:28 +02:00
  • 82242a6906 Replace match with manual ifs code point and UTF-16 code unit bidi checks. Henri Sivonen 2018-01-12 15:30:36 +02:00
  • 0abfbe6dbc Sync mem.rs with safe_encoding_rs_mem. Henri Sivonen 2018-01-12 13:19:35 +02:00
  • 57653de878 Document how Latin1 packing tail loop is not optimal on SSE2. Henri Sivonen 2018-01-08 15:19:18 +02:00
  • 6eade0fd6c Remove useless return values form Latin1 SIMD pack/unpack. Henri Sivonen 2018-01-08 13:54:51 +02:00
  • 16a2336987 Make notes about autovectorization TODOs. Henri Sivonen 2018-01-08 13:41:24 +02:00
  • 0b058f22df Silence warnings for contants that are not used for all configurations. Henri Sivonen 2018-01-08 13:33:22 +02:00
  • feaed16382 Document use of >= vs. ==. Henri Sivonen 2018-01-05 10:12:23 +02:00
  • 3c8ec61393 Document negative result about ASCII punctuation optimization. Henri Sivonen 2018-01-05 10:09:06 +02:00
  • 90edb9b5d7 Change a bound check from == to >= to allow the compiler to reason more. Henri Sivonen 2018-01-04 16:08:29 +02:00
  • 91f5252769 Avoid favoring return to ASCII path on the non-ASCII path in convert_str_to_utf16(). Henri Sivonen 2018-01-04 16:02:05 +02:00
  • a4bfbc1b58 Simplify convert_str_to_utf16() with the assumption that input is valid. Henri Sivonen 2018-01-04 15:58:50 +02:00
  • f5dd3f2dfa Rewrite match as if-else in convert_str_to_utf16() Henri Sivonen 2018-01-04 15:43:01 +02:00
  • 282b2ac04a Remove useless destination length checks. Henri Sivonen 2018-01-04 14:37:13 +02:00
  • cd7dadee3a Use a minimally simplified copy of convert_utf8_to_utf16_up_to_invalid() for convert_str_to_utf16() Henri Sivonen 2018-01-04 14:26:54 +02:00
  • 26f752e0f8 Execute fewer branches in by-unit checks for short inputs. Henri Sivonen 2017-12-08 14:02:54 +02:00
  • 54b42beda3 Make ASCII/Basic Latin/Latin1 checks fail a bit faster. Henri Sivonen 2017-11-15 16:56:20 +02:00
  • aed29b8c92 Test more near-EOF cases in gb18030. Henri Sivonen 2017-11-07 09:41:52 +02:00
  • ff5d4ea798 Test all possible buffer boundaries in decode tests. Henri Sivonen 2017-11-07 09:41:35 +02:00
  • dd49d8594b Make SIMD available for fuzzing. Henri Sivonen 2017-10-11 11:48:43 +03:00
  • 86e2f3445f Be a bit smarted about skipping complexity with short but aligned UTF-16. Henri Sivonen 2017-10-05 12:30:32 +03:00
  • 0c4eaa5f7e Ignore trailing high surrogate when SIMD UTF-16 validation calls ALU UTF-16 validation. Henri Sivonen 2017-10-05 12:23:37 +03:00
  • f65b0e5054 Compute len_minus_stride later in utf16_valid_up_to_impl. Henri Sivonen 2017-10-05 11:09:13 +03:00
  • e39161a801 Add SIMD fuzzing. Henri Sivonen 2017-10-05 11:08:18 +03:00
  • f32705a674 Handle U+DC00 followed by another low surrogate in utf16_valid_up_to(). Henri Sivonen 2017-10-04 17:22:48 +03:00
  • 0f8af50797 Complete mem fuzzer. Henri Sivonen 2017-10-04 17:16:49 +03:00
  • 1dbdfc1b3a More mem fuzzing. Henri Sivonen 2017-10-04 11:37:19 +03:00
  • 5208fc3f86 Actually use safe_encoding_rs_mem. Henri Sivonen 2017-09-26 15:39:43 +03:00
  • 9b9ed8fb5c More fuzzing for mem. Henri Sivonen 2017-09-26 15:38:59 +03:00
  • aaa98af5d6 Tweak documentation for mem. Henri Sivonen 2017-09-22 13:38:06 +03:00
  • fa3729be11 Annotate candidates for cross-crate inlining. Henri Sivonen 2017-09-22 12:03:21 +03:00
  • a109713b6f Provide a SIMD implementation of utf16_valid_up_to(). Henri Sivonen 2017-09-22 11:41:10 +03:00
  • 7df63077b1 Clean up alignment constants. Henri Sivonen 2017-09-21 14:47:47 +03:00
  • d5f635d580 Provide SIMD implementations of the by-unit is_foo checks in mem. Henri Sivonen 2017-09-21 14:37:28 +03:00
  • 27fc6ff463 Macroize common function structure. Henri Sivonen 2017-09-21 14:03:15 +03:00
  • 1278e1c338 Document mem. Henri Sivonen 2017-09-21 13:28:55 +03:00
  • 4fc56dcf63 More tests for mem. Henri Sivonen 2017-09-20 17:01:46 +03:00
  • 2e3bc33b08 Even more code and tests for the mem module. Henri Sivonen 2017-09-20 15:53:06 +03:00
  • 8dfb3adb36 More ALU code and tests for the mem module. Henri Sivonen 2017-09-20 14:42:19 +03:00
  • 5c26b9724a More draft code for the new mem API. Henri Sivonen 2017-09-07 15:23:33 +03:00
  • 481058e18b Make the new draft API compile. Henri Sivonen 2017-09-01 16:17:32 +03:00
  • 8872876001 Draft of function signatures. Henri Sivonen 2017-09-01 16:12:14 +03:00
  • a20efedb45 Increment the version number to 0.7.1. Henri Sivonen 2017-10-04 13:02:55 +03:00
  • 1f0292d397 Correctly encode U+DC00 followed by another low surrogate from UTF-16. Henri Sivonen 2017-10-04 12:53:38 +03:00
  • 6a8c5baa61 Fix misleading indent. Henri Sivonen 2017-09-22 13:25:09 +03:00
  • 96f1d4e3a9 Refactor SIMD functions in anticipation of arm32 and latin1 use cases. Henri Sivonen 2017-09-07 16:00:52 +03:00
  • 91f105f425 Remove useless use of mut. Henri Sivonen 2017-09-07 15:34:05 +03:00
  • 75cd5a60d0 Add Aarch64 ideas. Henri Sivonen 2017-08-31 09:24:49 +03:00
  • cb3384e93d Avoid wording that suggested that SSE2 was used on Aarch64. Henri Sivonen 2017-08-28 13:00:26 +03:00
  • c0dc9dca7a Link to sample programs from the README. Henri Sivonen 2017-08-28 12:11:13 +03:00
  • 2e6c0d51f4 Mark SIMD acceleration of Aarch64 as done. Henri Sivonen 2017-08-25 12:12:16 +03:00
  • 0d23194b6b Increment version number to 0.7.0. Henri Sivonen 2017-08-25 12:07:15 +03:00
  • f309cad1e7 Remove for_name-related code from generate-encoding-data.py. Henri Sivonen 2017-08-25 10:56:51 +03:00
  • 5339290575 Remove Encoding::for_name(). Henri Sivonen 2017-08-25 10:17:04 +03:00
  • 922bc932b3 Update Rust version matching Firefox Nightly in Travis. Henri Sivonen 2017-08-25 09:27:45 +03:00
  • 669dd024c7 Mention the serde feature in README. Henri Sivonen 2017-08-25 09:23:20 +03:00
  • 8a8606bf52 Describe no-static-ideograph-encoder-tables a bit more in README. Henri Sivonen 2017-08-25 09:17:21 +03:00
  • c3af37d79e Update Aarch64 SIMD coverage in README. Henri Sivonen 2017-08-25 09:14:14 +03:00
  • 2ba2ced3a4 Add detail to "Funtionality" in the README. Henri Sivonen 2017-08-25 09:09:28 +03:00
  • 9fb481c053 Test serde in CI. Henri Sivonen 2017-08-24 15:26:41 +03:00
  • be7fbe2e5d Add serde support. Henri Sivonen 2017-08-22 13:01:05 +03:00
  • ac22d2ff53 Use stdlib for UTF-8 validation unless this crate is known to be faster. Henri Sivonen 2017-08-22 15:21:28 +03:00
  • 2bd717151e Support unaligned-only SIMD on aarch64. Henri Sivonen 2017-08-23 16:32:17 +03:00
  • 778ccd157a Update release notes. Henri Sivonen 2017-08-22 11:26:15 +03:00
  • 09e39d4faf Comment out the parallel-utf8 cargo feature. Henri Sivonen 2017-08-22 11:21:09 +03:00
  • c1008caa37 Make validate_ascii on aarch64 use unaligned loads exclusively. Henri Sivonen 2017-08-21 10:36:57 +03:00
  • 4911f3655e Use less arithmetic in by-stride loops. Henri Sivonen 2017-08-17 14:13:56 +03:00
  • 2b9a4420fd Fix indent. Henri Sivonen 2017-08-17 13:58:38 +03:00
  • 01386246e6 Run rustfmt. Henri Sivonen 2017-08-17 13:56:51 +03:00
  • 12d769e4d9 Update test cases to test mask_ascii instead of test_ascii. Henri Sivonen 2017-08-17 13:48:50 +03:00
  • e503926aeb Make UTF-8 validation at least as fast as std again in the x86_64 + explicit SIMD case. Henri Sivonen 2017-08-17 11:01:44 +03:00
  • 6684cb5082 Make replacement a label of the replacement encoding. Henri Sivonen 2017-07-31 13:34:04 +03:00
  • 554520e8da Backticks around document.characterSet. Henri Sivonen 2017-07-07 13:15:25 +03:00
  • 14157d5be9 Add a summary of functionality to the README. Henri Sivonen 2017-07-07 10:45:56 +03:00
  • 90434d3767 Document Rust version support in README. Henri Sivonen 2017-06-22 08:17:41 +03:00
  • f5a5106510 Test SIMD on Travis. Henri Sivonen 2017-06-22 07:53:08 +03:00
  • 2f00c6dd1e Test old Rust versions. Henri Sivonen 2017-06-22 07:39:41 +03:00
  • 58a2cbe3c2 Rename not-null macro. Henri Sivonen 2017-06-21 16:18:31 +03:00
  • bf4a8f8b48 Macroize the type for static encoding pointers in C header. Henri Sivonen 2017-06-21 09:24:58 +03:00
  • 02490fe3ad Update README. Henri Sivonen 2017-06-16 11:10:07 +03:00
  • dfaba95ad2 bump rayon to 0.8 Igor Gnatenko 2017-06-15 17:39:02 +02:00
  • b180e1677d Use fewer operations on Aarch64 with SIMD. Henri Sivonen 2017-06-12 14:09:04 +03:00
  • 81f19ac999 Make the simd-accel feature a no-op when not supported. Henri Sivonen 2017-06-12 13:45:51 +03:00
  • 3049251cd8 Make smarter use of SIMD when encoding UTF-16 Basic Latin to ASCII. Henri Sivonen 2017-06-07 14:49:23 +03:00
  • 26a398f1b3 Allow unused macros in ascii.rs. Henri Sivonen 2017-06-07 12:18:09 +03:00
  • 14314b56bf Add non-SSE2 little-endian SIMD support. Henri Sivonen 2017-06-06 13:44:19 +03:00
  • 2b9ebb0dd8 Remove () from usize(). Masaki Hara 2017-05-30 09:24:11 +09:00
  • 45025cb6c5 Increment version to 0.6.11. Henri Sivonen 2017-06-02 12:01:40 +03:00
  • 8088ba623f Update the simd crate dependency to 0.2.0. Henri Sivonen 2017-06-02 12:00:39 +03:00
  • 376904ef57 Document previous change in relnotes. Henri Sivonen 2017-06-02 11:58:13 +03:00
  • 549c534072 Make has_pending_state() public. Henri Sivonen 2017-06-02 11:54:57 +03:00
  • 233dd60034 Add () after method names in docs. Henri Sivonen 2017-06-02 11:49:23 +03:00