For ASCII systems, b36_char_to_int gets compiled into a jump table. That jump table ends up being pretty large because it covers the range from '0' (48) to 'z' (122). On size-constrained systems that can assume ASCII, this patch provides a new flag: LIBC_CONF_CTYPE_SMALLER_ASCII that forces a smaller implementation that doesn't compile into a jump table.
LLVM libc ========= This directory and its subdirectories contain source code for llvm-libc, a retargetable implementation of the C standard library. LLVM is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.