{"author":"Daniel Stenberg","author_email":"daniel@haxx.se","author_time":1739828061,"commit_time":1739947746,"committer":"Daniel Stenberg","committer_email":"daniel@haxx.se","hash":"ad700a091788612017a4760ea4f81cbe8fb413ce","message":"strparse: speed up the hex parser somewhat\n\nAround 2.3x speed-up parsing many large hexadecimal numbers. The decimal and\noctal parser get marginally faster.\n\nStill very readable, compact and easy to follow code.\n\nTweaks\n\n- combine the max and the overflow check, gains 3ns/num (use a separate\n  check outside of the loop instead for max < base)\n- one less indirection in the pointer, gains 3ns/num\n- using the table lookup for hex nums, gains 5ns/num\n- unfold the num_digit() macro, gains 3s/num\n- use the hexasciitable unconditionally, gains 2ns/num\n- use post-increment pointer in the table lookup, gains 1ns/num\n- improved valid_digit() using the table for the hex case,\n  gains 26 ns/num\n- use \"max char\" in valid_digit(), gains 3ns/num\n\nBehavior changes:\n\n- no longer returns STRE_TOO_BIG - only STRE_OVERFLOW\n- does not move the char ** on error, which is probably better\n\nUpdated and extended test 1664 (significantly).\n\nCloses #16374\n","parents":["3fd1dfc829cec86fd74e0e2973d286c59bcb9b92"],"tree_hash":"09927cb9e70ac6567a10b88c55b14081d88b81c0"}