src/hb-ot-var-common.hh


Log

Author Commit Date CI Message
Qunxin Liu 366ffd1e 2023-08-07T10:32:47 [instancer] fix move constructor for tuple_delta_t
Qunxin Liu 5a4694b6 2023-08-07T09:55:30 [instancer] add calc_inferred_deltas() for gvar
Qunxin Liu 198612c1 2023-07-28T15:41:54 [instancer] add decompile_glyph_variations () for gvar
Qunxin Liu fb447274 2023-08-07T09:44:41 [instancer] add instantiate () for gvar
Qunxin Liu 746b112f 2023-08-07T09:26:42 [instancer] add serialize () for gvar
Qunxin Liu 3c86b096 2023-07-28T16:18:51 [instancer] Add instantiate () and compile_bytes() for gvar -Also add support for using shared_points and shared_tuples
Qunxin Liu a0f810ef 2023-07-28T15:04:47 [instancer] add struct glyph_variations_t for gvar -Add compile_peak_coords () in tuple_delta_t -Add compile_shared_tuples () for glyph_variations_t
Qunxin Liu 45a0d65c 2023-07-27T09:06:02 [instancer] cosmetic change
Behdad Esfahbod b36b100e 2023-07-26T14:42:46 [var] Remove byte_data_t; use hb_bytes_t Now that we have hopefully fixed the bug preventing hb_bytes_t use, remove the hack. Ref. 5690840ceb190341f9960d2b975c4366566ae86b https://github.com/harfbuzz/harfbuzz/issues/4138
Qunxin Liu 5cab0709 2023-07-26T09:56:07 [instancer] fix for missing to update tuple indices flag in operator +=
Qunxin Liu 515f85d5 2023-07-24T11:10:17 [instancer] fix incorrect encoded_len
Qunxin Liu bccdcf5b 2023-07-21T10:17:43 [instancer] fix a bug in compiling deltas_y for gvar
Qunxin Liu 12be4cb1 2023-07-17T11:08:54 [instancer-solver] fix APIs calling rebase_tent() with TripleDistances
Behdad Esfahbod c14f94f7 2023-07-10T16:28:22 Fix compiler error hb-ot-var-common.hh:758:32: error: implicit conversion from 'int' to 'char' changes value from 191 to -65 [-Werror, -Wconstant-conversion] *it++ = (DELTAS_ARE_ZERO | 63);
Behdad Esfahbod b583978b 2023-07-08T20:41:58 [subset/DeltaSetMapIndex] Speedup retaingids serialize()
Behdad Esfahbod 3505486a 2023-07-08T20:28:45 [subset/DeltaSetMapIndex] Micro-optimize
Behdad Esfahbod e92eefaa 2023-07-02T11:35:51 [gvar] Cache two values in shared_tuple_active_idx Speeds up varc-hangul.ttf draw_glyph by 10%.
Behdad Esfahbod 99db06b4 2023-06-26T17:30:31 [var] Simplify a couple of copy operations
Behdad Esfahbod 73bcd3f2 2023-06-26T17:24:40 [var] Adjust a few allocations to not clean space Since we immediately copy.
Qunxin Liu b10cff99 2023-06-20T13:36:10 [instancer] address review comments manage memory through vector when possible
Qunxin Liu e39e0201 2023-06-20T11:48:53 [instancer] add serialize() method for TupleVariationData
Qunxin Liu 5ef0199d 2023-06-20T11:39:20 [instancer] instantiate() and compile_bytes () for tuple_variations_t Also add testing code
Qunxin Liu 48c70ce5 2023-06-20T11:30:51 [instancer] add compile_tuple_var_header()
Qunxin Liu 6354b71f 2023-06-20T11:24:05 [instancer] add compile_deltas() for tuple_delta_t
Qunxin Liu a00ad83a 2023-06-20T11:17:11 [instancer] add encode_delta_run()
Qunxin Liu 19e5033b 2023-06-20T11:02:41 [instancer] add compile_all_point_sets() and find_shared_points () compiled bytes for points set are stored in a hashmap
Qunxin Liu 065e0af5 2023-06-20T10:58:24 [instancer] add compile_point_set() for tuple_variations_t Also add a byte_data_t struct to store compiled bytes
Qunxin Liu e41b688b 2023-06-12T13:25:19 [instancer] fix bug in tuple varstore decompiling when points count is 0, it means deltas will apply to all points
Qunxin Liu 3669a627 2023-06-08T13:26:37 fix bot
Qunxin Liu 9fd36766 2023-06-08T12:27:36 [instancer] add testing code for change_tuple_variation_axis_limits() Also fixed a small bug
Qunxin Liu 8057661f 2023-06-08T12:10:27 [instancer] use axis tag as hashmap key instead of axis index This makes remove_axis() and set_tent() faster, which are used by change_axis_limits ()
Qunxin Liu 389446c5 2023-06-08T09:07:47 [instancer] add merge_tuple_variations ()
Qunxin Liu 01f9b797 2023-06-05T17:26:20 address review comments
Qunxin Liu 796a0df9 2023-06-05T15:33:43 try to fix bot
Qunxin Liu 2012df07 2023-06-05T13:46:04 [instancer] add struct tuple_variation_t And add function to decompile TupleVariationData into the struct
Qunxin Liu 9f508b73 2023-06-05T13:35:28 [instancer] add unpack_axis_tuples () in TupleVariationHeader
Qunxin Liu 7b0ecbd8 2023-06-05T13:08:12 [instancer] add struct tuple_delta_t to represent 1 tuple variation
Behdad Esfahbod 82741304 2023-06-04T09:41:41 [subset] start_embed never returns nullptr Remove checks.
Qunxin Liu 1ae99d1a 2023-06-01T15:22:26 bug fix
Behdad Esfahbod 9b5afad4 2023-04-27T12:38:44 [var] Fix assertion Fixes https://oss-fuzz.com/testcase-detail/4861707188305920
Behdad Esfahbod 5d1a603a 2023-04-26T16:25:15 [var] Fix compiler warnings
Behdad Esfahbod af393e96 2023-04-26T16:02:06 [gvar] Refactor a variable
Behdad Esfahbod 76e269af 2023-04-26T15:47:12 [gvar] Micro-optimize
Behdad Esfahbod 7349cea1 2023-04-26T14:27:24 [gvar] Micro-optimization
Behdad Esfahbod 87c6e68e 2023-04-26T13:20:51 [gvar] Assertion
Behdad Esfahbod 09386737 2023-04-26T13:19:27 [gvar] Error handling & micro-optimization
Behdad Esfahbod b6aa2d71 2023-04-26T13:06:24 [gvar] Speed up calculate_scalar more Use a gvar-wide cache of the one active peak index for shared-tuples that have only one active peak. This speeds up the scalar calculation. This shows significant speedup for the CJK VarComposite font for example since that has tens of axes with mostly only one active peak.
Behdad Esfahbod fe8c9170 2023-04-25T11:30:36 [gvar] Micro-optimize has_intermediate() access
Behdad Esfahbod 385e2376 2023-04-24T17:51:07 [var] Optimize calculate_scalar more This change alone is showing me 14% scalar in a benchmark. The reason being that the array::operator[] is not being invoked a lot of time, which was, many times, hitting the unlikely() path. Weird!
Behdad Esfahbod 7a3928e2 2023-04-24T17:38:20 [var] Optimize calculate_scalar For varfonts with lots of deltasets, the loop in this function is *really* hot...
Qunxin Liu c1acfe99 2023-03-22T19:06:58 [instancer] bug fix in TupleVariationData get_size () We need to iterate TupleVariationHeader when calculating the total size
Qunxin Liu fe671a5a 2023-03-16T14:10:21 [instancer] support COLRv1 full instancing
Qunxin Liu 8b0c7b95 2023-02-10T09:49:09 [instance] Add struct definition for cvar table Also add functions to add cvt tables with cvar deltas applied
Qunxin Liu 22cc73f3 2023-02-06T12:36:05 Move common structs for TupleVariation from gvar to var-common.hh Also added a table_base in the iterator and related function to handle different start address for dataoffset in cvar and gvar
Behdad Esfahbod e06de98c 2022-12-16T11:31:00 [var-common] Make VarInstancer take an offset
Behdad Esfahbod 4e9a6cfb 2022-12-12T10:20:51 [COLR] Use VarStoreInstancer
Behdad Esfahbod a3a3d37b 2022-12-12T10:17:20 [var] Add VarStoreInstancer
Behdad Esfahbod 59c45f6d 2022-11-22T12:54:50 Use hb_memcpy instead of memcpy consistently
Behdad Esfahbod 0a295fcd 2022-07-01T17:16:24 [var] Fix DeltaSetIndexMapFormat1 Fixes https://github.com/harfbuzz/harfbuzz/issues/3692
Qunxin Liu f55d8347 2021-10-14T13:39:45 [subset] Move struct DeltaSetIndexMap into hb-ot-var-common.hh Also fix naming issues in review comments