| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix code style | Peng Wu | 2023-01-14 | 1 | -2/+0 |
| | | |||||
| * | Add license header to unaligned_memory.h | Peng Wu | 2022-11-30 | 1 | -0/+20 |
| | | |||||
| * | Update class MemoryChunk | Peng Wu | 2022-11-29 | 1 | -8/+4 |
| | | |||||
| * | Fixup: fix build error | Matias Larsson | 2022-11-29 | 1 | -1/+2 |
| | | | | | Add the new header file to noinst_HEADERS. | ||||
| * | Fix libpinyin crash on ARMv7 | Matias Larsson | 2022-11-29 | 2 | -0/+77 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the alignment trap in get_unigram_frequency(). Fix also other places where this same trap could happen (depending on compiler and surrounding code). The trap happened when the ARM GCC generated a SIMD instruction (specifically VLDR) to load 32 bits in a single instruction, and when the memory address was not aligned to 32 bits. VLDR traps if the address is not aligned. GCC generated the instruction because of the cast to uint32 from the address. The fix is to allocate a uint32 variable in stack and use memcpy to copy the data to that variable. This way we ensure that appropriate instructions are generated. **Links** About the issue with GCC: https://trust-in-soft.com/blog/2020/04/06/gcc-always-assumes-aligned-pointer-accesses/ How Linux does it: https://elixir.bootlin.com/linux/v5.10.155/source/include/linux/unaligned/memmove.h#L13 ARM documentation: https://documentation-service.arm.com/static/5f8dc043f86e16515cdbbc92?token= See 'A3.2.1 Unaligned data access' | ||||
| * | Fix segmentation fault on ARMv7 | Matias Larsson | 2022-11-29 | 1 | -2/+2 |
| | | |||||
| * | Use abort function instead of assert macro | Peng Wu | 2022-06-06 | 1 | -1/+1 |
| | | |||||
| * | Update Makefile.am | Peng Wu | 2022-05-30 | 1 | -0/+1 |
| | | |||||
| * | Write pinyin_utils.h | Peng Wu | 2022-05-30 | 1 | -0/+32 |
| | | |||||
| * | improve autoconf for libpinyin.la and libzhuyin.la | Peng Wu | 2019-11-28 | 1 | -3/+3 |
| | | |||||
| * | support zhuyin table in table_info.cpp | Peng Wu | 2017-05-11 | 1 | -0/+1 |
| | | |||||
| * | fixes warnings | Peng Wu | 2017-02-14 | 1 | -1/+1 |
| | | |||||
| * | fixes phonetic_lookup_heap.h | Peng Wu | 2017-02-07 | 1 | -0/+3 |
| | | |||||
| * | rename MatchResults to MatchResult | Peng Wu | 2017-02-04 | 1 | -1/+1 |
| | | |||||
| * | fixes compile | Peng Wu | 2016-11-29 | 1 | -1/+1 |
| | | |||||
| * | update Makefile.am | Peng Wu | 2016-10-31 | 1 | -5/+4 |
| | | |||||
| * | update header license | Peng Wu | 2016-10-31 | 2 | -14/+12 |
| | | |||||
| * | fixes warnings | Peng Wu | 2016-10-28 | 1 | -3/+3 |
| | | |||||
| * | add file length and checksum checks for MemoryChunk | Peng Wu | 2016-10-26 | 1 | -10/+70 |
| | | |||||
| * | write get_check_sum method | Peng Wu | 2016-10-25 | 1 | -0/+30 |
| | | |||||
| * | import open-gram dictionary | Peng Wu | 2016-10-09 | 1 | -4/+5 |
| | | |||||
| * | remove table_entry_header_t | Peng Wu | 2016-02-03 | 1 | -2/+0 |
| | | |||||
| * | declare class PhraseTableEntry | Peng Wu | 2016-01-21 | 1 | -0/+3 |
| | | |||||
| * | write pinyin_custom3.h | Peng Wu | 2016-01-06 | 1 | -0/+6 |
| | | |||||
| * | update API | Peng Wu | 2015-05-28 | 1 | -5/+0 |
| | | |||||
| * | re-factor table info | Peng Wu | 2015-05-21 | 1 | -0/+5 |
| | | |||||
| * | update table info | Peng Wu | 2015-05-20 | 1 | -13/+0 |
| | | |||||
| * | update tables | Peng Wu | 2015-05-20 | 1 | -1/+15 |
| | | |||||
| * | add phonetic table type to table info | Peng Wu | 2015-05-20 | 1 | -1/+3 |
| | | |||||
| * | split load method into load and mmap of MemoryChunk | Peng Wu | 2015-04-08 | 1 | -12/+38 |
| | | |||||
| * | code style re-factor | Peng Wu | 2015-04-08 | 1 | -108/+108 |
| | | |||||
| * | remove LAMBDA_PARAMETER | Peng Wu | 2013-04-12 | 1 | -2/+0 |
| | | |||||
| * | fixes compile | Peng Wu | 2013-04-08 | 1 | -11/+0 |
| | | |||||
| * | update table info | Peng Wu | 2013-04-07 | 1 | -3/+3 |
| | | |||||
| * | write table info in progress | Peng Wu | 2013-04-03 | 1 | -1/+1 |
| | | |||||
| * | use G_BEGIN/END_DECLS | Peng Wu | 2013-03-22 | 1 | -3/+3 |
| | | |||||
| * | fixes novel_types.h | Peng Wu | 2013-03-20 | 1 | -3/+2 |
| | | |||||
| * | update lambda | Peng Wu | 2013-03-07 | 1 | -1/+1 |
| | | |||||
| * | update lambda | Peng Wu | 2013-03-04 | 1 | -1/+1 |
| | | |||||
| * | update lambda parameter | Peng Wu | 2013-02-27 | 1 | -1/+1 |
| | | |||||
| * | add enum PHRASE_INDEX_LIBRARIES | Peng Wu | 2013-02-19 | 1 | -0/+19 |
| | | |||||
| * | fixes typo | Peng Wu | 2013-02-05 | 1 | -2/+1 |
| | | |||||
| * | re-factor load/save | Peng Wu | 2013-02-04 | 1 | -20/+19 |
| | | |||||
| * | add mmap support | Peng Wu | 2013-02-04 | 1 | -14/+44 |
| | | |||||
| * | write mask out for facade tables | Peng Wu | 2012-11-12 | 1 | -1/+2 |
| | | |||||
| * | fixes compile | Peng Wu | 2012-09-07 | 1 | -0/+6 |
| | | |||||
| * | refactor stl_lite.h | Peng Wu | 2012-09-01 | 1 | -275/+12 |
| | | |||||
| * | refine pinyin.h | Peng Wu | 2012-08-25 | 1 | -0/+4 |
| | | |||||
| * | add phrase_large_table2.h | Peng Wu | 2012-08-25 | 1 | -1/+3 |
| | | |||||
| * | refine asserts in large tables | Peng Wu | 2012-06-21 | 1 | -0/+1 |
| | | |||||
