tcc 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +35 -0
- data/README.md +196 -0
- data/ext/tcc/extconf.rb +25 -0
- data/ext/tcc/tcc-0.9.26.patch +30 -0
- data/ext/tcc/tcc-0.9.26/COPYING +504 -0
- data/ext/tcc/tcc-0.9.26/Changelog +396 -0
- data/ext/tcc/tcc-0.9.26/Makefile +349 -0
- data/ext/tcc/tcc-0.9.26/README +101 -0
- data/ext/tcc/tcc-0.9.26/TODO +93 -0
- data/ext/tcc/tcc-0.9.26/VERSION +1 -0
- data/ext/tcc/tcc-0.9.26/arm-gen.c +2005 -0
- data/ext/tcc/tcc-0.9.26/c67-gen.c +2560 -0
- data/ext/tcc/tcc-0.9.26/coff.h +446 -0
- data/ext/tcc/tcc-0.9.26/config.h +8 -0
- data/ext/tcc/tcc-0.9.26/config.mak +28 -0
- data/ext/tcc/tcc-0.9.26/config.texi +1 -0
- data/ext/tcc/tcc-0.9.26/configure +540 -0
- data/ext/tcc/tcc-0.9.26/conftest.c +71 -0
- data/ext/tcc/tcc-0.9.26/elf.h +1731 -0
- data/ext/tcc/tcc-0.9.26/examples/ex1.c +8 -0
- data/ext/tcc/tcc-0.9.26/examples/ex2.c +98 -0
- data/ext/tcc/tcc-0.9.26/examples/ex3.c +24 -0
- data/ext/tcc/tcc-0.9.26/examples/ex4.c +26 -0
- data/ext/tcc/tcc-0.9.26/examples/ex5.c +8 -0
- data/ext/tcc/tcc-0.9.26/i386-asm.c +1498 -0
- data/ext/tcc/tcc-0.9.26/i386-asm.h +473 -0
- data/ext/tcc/tcc-0.9.26/i386-gen.c +1096 -0
- data/ext/tcc/tcc-0.9.26/i386-tok.h +243 -0
- data/ext/tcc/tcc-0.9.26/il-gen.c +667 -0
- data/ext/tcc/tcc-0.9.26/il-opcodes.h +251 -0
- data/ext/tcc/tcc-0.9.26/include/float.h +57 -0
- data/ext/tcc/tcc-0.9.26/include/stdarg.h +41 -0
- data/ext/tcc/tcc-0.9.26/include/stdbool.h +10 -0
- data/ext/tcc/tcc-0.9.26/include/stddef.h +28 -0
- data/ext/tcc/tcc-0.9.26/include/tcclib.h +78 -0
- data/ext/tcc/tcc-0.9.26/include/varargs.h +12 -0
- data/ext/tcc/tcc-0.9.26/lib/Makefile +102 -0
- data/ext/tcc/tcc-0.9.26/lib/alloca86-bt.S +47 -0
- data/ext/tcc/tcc-0.9.26/lib/alloca86.S +35 -0
- data/ext/tcc/tcc-0.9.26/lib/alloca86_64.S +42 -0
- data/ext/tcc/tcc-0.9.26/lib/bcheck.c +875 -0
- data/ext/tcc/tcc-0.9.26/lib/libtcc1.c +691 -0
- data/ext/tcc/tcc-0.9.26/libtcc.c +1941 -0
- data/ext/tcc/tcc-0.9.26/libtcc.h +103 -0
- data/ext/tcc/tcc-0.9.26/stab.def +234 -0
- data/ext/tcc/tcc-0.9.26/stab.h +17 -0
- data/ext/tcc/tcc-0.9.26/tcc-doc.html +2332 -0
- data/ext/tcc/tcc-0.9.26/tcc-doc.info +1151 -0
- data/ext/tcc/tcc-0.9.26/tcc-doc.texi +1268 -0
- data/ext/tcc/tcc-0.9.26/tcc.1 +415 -0
- data/ext/tcc/tcc-0.9.26/tcc.c +352 -0
- data/ext/tcc/tcc-0.9.26/tcc.h +1379 -0
- data/ext/tcc/tcc-0.9.26/tccasm.c +1118 -0
- data/ext/tcc/tcc-0.9.26/tcccoff.c +948 -0
- data/ext/tcc/tcc-0.9.26/tccelf.c +3129 -0
- data/ext/tcc/tcc-0.9.26/tccgen.c +5841 -0
- data/ext/tcc/tcc-0.9.26/tccpe.c +1887 -0
- data/ext/tcc/tcc-0.9.26/tccpp.c +3128 -0
- data/ext/tcc/tcc-0.9.26/tccrun.c +737 -0
- data/ext/tcc/tcc-0.9.26/tcctok.h +278 -0
- data/ext/tcc/tcc-0.9.26/tests/Makefile +199 -0
- data/ext/tcc/tcc-0.9.26/tests/asmtest.S +609 -0
- data/ext/tcc/tcc-0.9.26/tests/boundtest.c +233 -0
- data/ext/tcc/tcc-0.9.26/tests/gcctestsuite.sh +33 -0
- data/ext/tcc/tcc-0.9.26/tests/libtcc_test.c +76 -0
- data/ext/tcc/tcc-0.9.26/tests/tcctest.c +2713 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/00_assignment.c +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/00_assignment.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/01_comment.c +14 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/01_comment.expect +5 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/02_printf.c +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/02_printf.expect +15 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/03_struct.c +31 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/03_struct.expect +6 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/04_for.c +15 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/04_for.expect +10 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/05_array.c +21 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/05_array.expect +10 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/06_case.c +29 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/06_case.expect +8 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/07_function.c +30 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/07_function.expect +4 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/08_while.c +24 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/08_while.expect +11 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/09_do_while.c +24 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/09_do_while.expect +11 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/10_pointer.c +40 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/10_pointer.expect +8 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/11_precedence.c +40 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/11_precedence.expect +15 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/12_hashdefine.c +14 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/12_hashdefine.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/13_integer_literals.c +20 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/13_integer_literals.expect +5 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/14_if.c +21 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/14_if.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/15_recursion.c +21 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/15_recursion.expect +10 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/16_nesting.c +21 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/16_nesting.expect +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/17_enum.c +29 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/17_enum.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.c +12 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.h +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/19_pointer_arithmetic.c +28 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/19_pointer_arithmetic.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/20_pointer_comparison.c +24 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/20_pointer_comparison.expect +6 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/21_char_array.c +33 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/21_char_array.expect +7 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/22_floating_point.c +50 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/22_floating_point.expect +16 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/23_type_coercion.c +54 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/23_type_coercion.expect +12 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/24_math_library.c +28 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/24_math_library.expect +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/25_quicksort.c +83 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/25_quicksort.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/26_character_constants.c +17 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/26_character_constants.expect +8 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/27_sizeof.c +16 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/27_sizeof.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/28_strings.c +46 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/28_strings.expect +19 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/29_array_address.c +13 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/29_array_address.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/30_hanoi.c +122 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/30_hanoi.expect +71 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/31_args.c +14 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/31_args.expect +7 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/32_led.c +266 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/32_led.expect +4 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/33_ternary_op.c +15 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/33_ternary_op.expect +10 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/34_array_assignment.c +23 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/34_array_assignment.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/35_sizeof.c +14 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/35_sizeof.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/36_array_initialisers.c +21 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/36_array_initialisers.expect +20 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/37_sprintf.c +17 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/37_sprintf.expect +20 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/38_multiple_array_index.c +32 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/38_multiple_array_index.expect +4 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/39_typedef.c +31 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/39_typedef.expect +3 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/40_stdio.c +52 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/40_stdio.expect +27 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/41_hashif.c +85 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/41_hashif.expect +6 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/42_function_pointer.c +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/42_function_pointer.expect +2 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/43_void_param.c +15 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/43_void_param.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/44_scoped_declarations.c +17 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/44_scoped_declarations.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/45_empty_for.c +18 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/45_empty_for.expect +10 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/46_grep.c +564 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/47_switch_return.c +24 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/47_switch_return.expect +4 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/48_nested_break.c +26 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/48_nested_break.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/49_bracket_evaluation.c +23 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/49_bracket_evaluation.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/50_logical_second_arg.c +29 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/50_logical_second_arg.expect +20 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/51_static.c +30 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/51_static.expect +8 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/52_unnamed_enum.c +27 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/52_unnamed_enum.expect +9 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/54_goto.c +56 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/54_goto.expect +8 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/55_lshift_type.c +52 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/55_lshift_type.expect +1 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/LICENSE +37 -0
- data/ext/tcc/tcc-0.9.26/tests/tests2/Makefile +98 -0
- data/ext/tcc/tcc-0.9.26/texi2pod.pl +427 -0
- data/ext/tcc/tcc-0.9.26/win32/build-tcc.bat +60 -0
- data/ext/tcc/tcc-0.9.26/win32/examples/dll.c +12 -0
- data/ext/tcc/tcc-0.9.26/win32/examples/fib.c +23 -0
- data/ext/tcc/tcc-0.9.26/win32/examples/hello_dll.c +19 -0
- data/ext/tcc/tcc-0.9.26/win32/examples/hello_win.c +163 -0
- data/ext/tcc/tcc-0.9.26/win32/include/_mingw.h +139 -0
- data/ext/tcc/tcc-0.9.26/win32/include/assert.h +54 -0
- data/ext/tcc/tcc-0.9.26/win32/include/conio.h +409 -0
- data/ext/tcc/tcc-0.9.26/win32/include/ctype.h +281 -0
- data/ext/tcc/tcc-0.9.26/win32/include/dir.h +31 -0
- data/ext/tcc/tcc-0.9.26/win32/include/direct.h +68 -0
- data/ext/tcc/tcc-0.9.26/win32/include/dirent.h +135 -0
- data/ext/tcc/tcc-0.9.26/win32/include/dos.h +55 -0
- data/ext/tcc/tcc-0.9.26/win32/include/errno.h +75 -0
- data/ext/tcc/tcc-0.9.26/win32/include/excpt.h +123 -0
- data/ext/tcc/tcc-0.9.26/win32/include/fcntl.h +52 -0
- data/ext/tcc/tcc-0.9.26/win32/include/fenv.h +108 -0
- data/ext/tcc/tcc-0.9.26/win32/include/inttypes.h +297 -0
- data/ext/tcc/tcc-0.9.26/win32/include/io.h +418 -0
- data/ext/tcc/tcc-0.9.26/win32/include/limits.h +111 -0
- data/ext/tcc/tcc-0.9.26/win32/include/locale.h +91 -0
- data/ext/tcc/tcc-0.9.26/win32/include/malloc.h +175 -0
- data/ext/tcc/tcc-0.9.26/win32/include/math.h +777 -0
- data/ext/tcc/tcc-0.9.26/win32/include/mem.h +13 -0
- data/ext/tcc/tcc-0.9.26/win32/include/memory.h +40 -0
- data/ext/tcc/tcc-0.9.26/win32/include/process.h +176 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/conio_s.h +42 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/crtdbg_s.h +19 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/io_s.h +33 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/mbstring_s.h +52 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/search_s.h +25 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stdio_s.h +145 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stdlib_s.h +67 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stralign_s.h +30 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/string_s.h +41 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/sys/timeb_s.h +34 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/tchar_s.h +266 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/time_s.h +61 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sec_api/wchar_s.h +128 -0
- data/ext/tcc/tcc-0.9.26/win32/include/setjmp.h +160 -0
- data/ext/tcc/tcc-0.9.26/win32/include/share.h +28 -0
- data/ext/tcc/tcc-0.9.26/win32/include/signal.h +63 -0
- data/ext/tcc/tcc-0.9.26/win32/include/stdint.h +209 -0
- data/ext/tcc/tcc-0.9.26/win32/include/stdio.h +429 -0
- data/ext/tcc/tcc-0.9.26/win32/include/stdlib.h +580 -0
- data/ext/tcc/tcc-0.9.26/win32/include/string.h +164 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/fcntl.h +13 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/file.h +14 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/locking.h +30 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/stat.h +290 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/time.h +69 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/timeb.h +133 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/types.h +118 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/unistd.h +14 -0
- data/ext/tcc/tcc-0.9.26/win32/include/sys/utime.h +146 -0
- data/ext/tcc/tcc-0.9.26/win32/include/tchar.h +1102 -0
- data/ext/tcc/tcc-0.9.26/win32/include/time.h +287 -0
- data/ext/tcc/tcc-0.9.26/win32/include/vadefs.h +11 -0
- data/ext/tcc/tcc-0.9.26/win32/include/values.h +4 -0
- data/ext/tcc/tcc-0.9.26/win32/include/wchar.h +871 -0
- data/ext/tcc/tcc-0.9.26/win32/include/wctype.h +172 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/basetsd.h +149 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/basetyps.h +85 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/guiddef.h +151 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/intrin.h +11 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/poppack.h +8 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack1.h +8 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack2.h +8 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack4.h +8 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack8.h +8 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/reason.h +80 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/specstrings.h +7 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/stralign.h +154 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/tvout.h +79 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winbase.h +2951 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/wincon.h +301 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/windef.h +293 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/windows.h +123 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winerror.h +3166 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/wingdi.h +4080 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnetwk.h +476 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnls.h +765 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnt.h +5770 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winreg.h +272 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winuser.h +5651 -0
- data/ext/tcc/tcc-0.9.26/win32/include/winapi/winver.h +160 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/chkstk.S +191 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/crt1.c +34 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/dllcrt1.c +13 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/dllmain.c +9 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/gdi32.def +337 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/kernel32.def +765 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/msvcrt.def +1399 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/user32.def +654 -0
- data/ext/tcc/tcc-0.9.26/win32/lib/wincrt1.c +64 -0
- data/ext/tcc/tcc-0.9.26/win32/tcc-win32.txt +156 -0
- data/ext/tcc/tcc-0.9.26/win32/tools/tiny_impdef.c +243 -0
- data/ext/tcc/tcc-0.9.26/win32/tools/tiny_libmaker.c +258 -0
- data/ext/tcc/tcc-0.9.26/x86_64-asm.h +448 -0
- data/ext/tcc/tcc-0.9.26/x86_64-gen.c +1701 -0
- data/lib/tcc.rb +291 -0
- data/tcc.gemspec +15 -0
- metadata +343 -0
@@ -0,0 +1,160 @@
|
|
1
|
+
/**
|
2
|
+
* This file has no copyright assigned and is placed in the Public Domain.
|
3
|
+
* This file is part of the w64 mingw-runtime package.
|
4
|
+
* No warranty is given; refer to the file DISCLAIMER within this package.
|
5
|
+
*/
|
6
|
+
#ifndef VER_H
|
7
|
+
#define VER_H
|
8
|
+
|
9
|
+
#ifdef __cplusplus
|
10
|
+
extern "C" {
|
11
|
+
#endif
|
12
|
+
|
13
|
+
#define VS_FILE_INFO RT_VERSION
|
14
|
+
#define VS_VERSION_INFO 1
|
15
|
+
#define VS_USER_DEFINED 100
|
16
|
+
|
17
|
+
#define VS_FFI_SIGNATURE 0xFEEF04BDL
|
18
|
+
#define VS_FFI_STRUCVERSION 0x00010000L
|
19
|
+
#define VS_FFI_FILEFLAGSMASK 0x0000003FL
|
20
|
+
|
21
|
+
#define VS_FF_DEBUG 0x00000001L
|
22
|
+
#define VS_FF_PRERELEASE 0x00000002L
|
23
|
+
#define VS_FF_PATCHED 0x00000004L
|
24
|
+
#define VS_FF_PRIVATEBUILD 0x00000008L
|
25
|
+
#define VS_FF_INFOINFERRED 0x00000010L
|
26
|
+
#define VS_FF_SPECIALBUILD 0x00000020L
|
27
|
+
|
28
|
+
#define VOS_UNKNOWN 0x00000000L
|
29
|
+
#define VOS_DOS 0x00010000L
|
30
|
+
#define VOS_OS216 0x00020000L
|
31
|
+
#define VOS_OS232 0x00030000L
|
32
|
+
#define VOS_NT 0x00040000L
|
33
|
+
#define VOS_WINCE 0x00050000L
|
34
|
+
|
35
|
+
#define VOS__BASE 0x00000000L
|
36
|
+
#define VOS__WINDOWS16 0x00000001L
|
37
|
+
#define VOS__PM16 0x00000002L
|
38
|
+
#define VOS__PM32 0x00000003L
|
39
|
+
#define VOS__WINDOWS32 0x00000004L
|
40
|
+
|
41
|
+
#define VOS_DOS_WINDOWS16 0x00010001L
|
42
|
+
#define VOS_DOS_WINDOWS32 0x00010004L
|
43
|
+
#define VOS_OS216_PM16 0x00020002L
|
44
|
+
#define VOS_OS232_PM32 0x00030003L
|
45
|
+
#define VOS_NT_WINDOWS32 0x00040004L
|
46
|
+
|
47
|
+
#define VFT_UNKNOWN 0x00000000L
|
48
|
+
#define VFT_APP 0x00000001L
|
49
|
+
#define VFT_DLL 0x00000002L
|
50
|
+
#define VFT_DRV 0x00000003L
|
51
|
+
#define VFT_FONT 0x00000004L
|
52
|
+
#define VFT_VXD 0x00000005L
|
53
|
+
#define VFT_STATIC_LIB 0x00000007L
|
54
|
+
|
55
|
+
#define VFT2_UNKNOWN 0x00000000L
|
56
|
+
#define VFT2_DRV_PRINTER 0x00000001L
|
57
|
+
#define VFT2_DRV_KEYBOARD 0x00000002L
|
58
|
+
#define VFT2_DRV_LANGUAGE 0x00000003L
|
59
|
+
#define VFT2_DRV_DISPLAY 0x00000004L
|
60
|
+
#define VFT2_DRV_MOUSE 0x00000005L
|
61
|
+
#define VFT2_DRV_NETWORK 0x00000006L
|
62
|
+
#define VFT2_DRV_SYSTEM 0x00000007L
|
63
|
+
#define VFT2_DRV_INSTALLABLE 0x00000008L
|
64
|
+
#define VFT2_DRV_SOUND 0x00000009L
|
65
|
+
#define VFT2_DRV_COMM 0x0000000AL
|
66
|
+
#define VFT2_DRV_INPUTMETHOD 0x0000000BL
|
67
|
+
#define VFT2_DRV_VERSIONED_PRINTER 0x0000000CL
|
68
|
+
|
69
|
+
#define VFT2_FONT_RASTER 0x00000001L
|
70
|
+
#define VFT2_FONT_VECTOR 0x00000002L
|
71
|
+
#define VFT2_FONT_TRUETYPE 0x00000003L
|
72
|
+
|
73
|
+
#define VFFF_ISSHAREDFILE 0x0001
|
74
|
+
|
75
|
+
#define VFF_CURNEDEST 0x0001
|
76
|
+
#define VFF_FILEINUSE 0x0002
|
77
|
+
#define VFF_BUFFTOOSMALL 0x0004
|
78
|
+
|
79
|
+
#define VIFF_FORCEINSTALL 0x0001
|
80
|
+
#define VIFF_DONTDELETEOLD 0x0002
|
81
|
+
|
82
|
+
#define VIF_TEMPFILE 0x00000001L
|
83
|
+
#define VIF_MISMATCH 0x00000002L
|
84
|
+
#define VIF_SRCOLD 0x00000004L
|
85
|
+
|
86
|
+
#define VIF_DIFFLANG 0x00000008L
|
87
|
+
#define VIF_DIFFCODEPG 0x00000010L
|
88
|
+
#define VIF_DIFFTYPE 0x00000020L
|
89
|
+
|
90
|
+
#define VIF_WRITEPROT 0x00000040L
|
91
|
+
#define VIF_FILEINUSE 0x00000080L
|
92
|
+
#define VIF_OUTOFSPACE 0x00000100L
|
93
|
+
#define VIF_ACCESSVIOLATION 0x00000200L
|
94
|
+
#define VIF_SHARINGVIOLATION 0x00000400L
|
95
|
+
#define VIF_CANNOTCREATE 0x00000800L
|
96
|
+
#define VIF_CANNOTDELETE 0x00001000L
|
97
|
+
#define VIF_CANNOTRENAME 0x00002000L
|
98
|
+
#define VIF_CANNOTDELETECUR 0x00004000L
|
99
|
+
#define VIF_OUTOFMEMORY 0x00008000L
|
100
|
+
|
101
|
+
#define VIF_CANNOTREADSRC 0x00010000L
|
102
|
+
#define VIF_CANNOTREADDST 0x00020000L
|
103
|
+
|
104
|
+
#define VIF_BUFFTOOSMALL 0x00040000L
|
105
|
+
#define VIF_CANNOTLOADLZ32 0x00080000L
|
106
|
+
#define VIF_CANNOTLOADCABINET 0x00100000L
|
107
|
+
|
108
|
+
#ifndef RC_INVOKED
|
109
|
+
|
110
|
+
typedef struct tagVS_FIXEDFILEINFO
|
111
|
+
{
|
112
|
+
DWORD dwSignature;
|
113
|
+
DWORD dwStrucVersion;
|
114
|
+
DWORD dwFileVersionMS;
|
115
|
+
DWORD dwFileVersionLS;
|
116
|
+
DWORD dwProductVersionMS;
|
117
|
+
DWORD dwProductVersionLS;
|
118
|
+
DWORD dwFileFlagsMask;
|
119
|
+
DWORD dwFileFlags;
|
120
|
+
DWORD dwFileOS;
|
121
|
+
DWORD dwFileType;
|
122
|
+
DWORD dwFileSubtype;
|
123
|
+
DWORD dwFileDateMS;
|
124
|
+
DWORD dwFileDateLS;
|
125
|
+
} VS_FIXEDFILEINFO;
|
126
|
+
|
127
|
+
#ifdef UNICODE
|
128
|
+
#define VerFindFile VerFindFileW
|
129
|
+
#define VerInstallFile VerInstallFileW
|
130
|
+
#define GetFileVersionInfoSize GetFileVersionInfoSizeW
|
131
|
+
#define GetFileVersionInfo GetFileVersionInfoW
|
132
|
+
#define VerLanguageName VerLanguageNameW
|
133
|
+
#define VerQueryValue VerQueryValueW
|
134
|
+
#else
|
135
|
+
#define VerFindFile VerFindFileA
|
136
|
+
#define VerInstallFile VerInstallFileA
|
137
|
+
#define GetFileVersionInfoSize GetFileVersionInfoSizeA
|
138
|
+
#define GetFileVersionInfo GetFileVersionInfoA
|
139
|
+
#define VerLanguageName VerLanguageNameA
|
140
|
+
#define VerQueryValue VerQueryValueA
|
141
|
+
#endif
|
142
|
+
|
143
|
+
DWORD WINAPI VerFindFileA(DWORD uFlags,LPSTR szFileName,LPSTR szWinDir,LPSTR szAppDir,LPSTR szCurDir,PUINT lpuCurDirLen,LPSTR szDestDir,PUINT lpuDestDirLen);
|
144
|
+
DWORD WINAPI VerFindFileW(DWORD uFlags,LPWSTR szFileName,LPWSTR szWinDir,LPWSTR szAppDir,LPWSTR szCurDir,PUINT lpuCurDirLen,LPWSTR szDestDir,PUINT lpuDestDirLen);
|
145
|
+
DWORD WINAPI VerInstallFileA(DWORD uFlags,LPSTR szSrcFileName,LPSTR szDestFileName,LPSTR szSrcDir,LPSTR szDestDir,LPSTR szCurDir,LPSTR szTmpFile,PUINT lpuTmpFileLen);
|
146
|
+
DWORD WINAPI VerInstallFileW(DWORD uFlags,LPWSTR szSrcFileName,LPWSTR szDestFileName,LPWSTR szSrcDir,LPWSTR szDestDir,LPWSTR szCurDir,LPWSTR szTmpFile,PUINT lpuTmpFileLen);
|
147
|
+
DWORD WINAPI GetFileVersionInfoSizeA(LPCSTR lptstrFilename,LPDWORD lpdwHandle);
|
148
|
+
DWORD WINAPI GetFileVersionInfoSizeW(LPCWSTR lptstrFilename,LPDWORD lpdwHandle);
|
149
|
+
WINBOOL WINAPI GetFileVersionInfoA(LPCSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
|
150
|
+
WINBOOL WINAPI GetFileVersionInfoW(LPCWSTR lptstrFilename,DWORD dwHandle,DWORD dwLen,LPVOID lpData);
|
151
|
+
DWORD WINAPI VerLanguageNameA(DWORD wLang,LPSTR szLang,DWORD nSize);
|
152
|
+
DWORD WINAPI VerLanguageNameW(DWORD wLang,LPWSTR szLang,DWORD nSize);
|
153
|
+
WINBOOL WINAPI VerQueryValueA(const LPVOID pBlock,LPSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
|
154
|
+
WINBOOL WINAPI VerQueryValueW(const LPVOID pBlock,LPWSTR lpSubBlock,LPVOID *lplpBuffer,PUINT puLen);
|
155
|
+
#endif
|
156
|
+
|
157
|
+
#ifdef __cplusplus
|
158
|
+
}
|
159
|
+
#endif
|
160
|
+
#endif
|
@@ -0,0 +1,191 @@
|
|
1
|
+
/* ---------------------------------------------- */
|
2
|
+
/* chkstk86.s */
|
3
|
+
|
4
|
+
/* ---------------------------------------------- */
|
5
|
+
#ifndef TCC_TARGET_X86_64
|
6
|
+
/* ---------------------------------------------- */
|
7
|
+
|
8
|
+
.globl __chkstk
|
9
|
+
|
10
|
+
__chkstk:
|
11
|
+
xchg (%esp),%ebp /* store ebp, get ret.addr */
|
12
|
+
push %ebp /* push ret.addr */
|
13
|
+
lea 4(%esp),%ebp /* setup frame ptr */
|
14
|
+
push %ecx /* save ecx */
|
15
|
+
mov %ebp,%ecx
|
16
|
+
P0:
|
17
|
+
sub $4096,%ecx
|
18
|
+
test %eax,(%ecx)
|
19
|
+
sub $4096,%eax
|
20
|
+
cmp $4096,%eax
|
21
|
+
jge P0
|
22
|
+
sub %eax,%ecx
|
23
|
+
test %eax,(%ecx)
|
24
|
+
|
25
|
+
mov %esp,%eax
|
26
|
+
mov %ecx,%esp
|
27
|
+
mov (%eax),%ecx /* restore ecx */
|
28
|
+
jmp *4(%eax)
|
29
|
+
|
30
|
+
/* ---------------------------------------------- */
|
31
|
+
#else
|
32
|
+
/* ---------------------------------------------- */
|
33
|
+
|
34
|
+
.globl __chkstk
|
35
|
+
|
36
|
+
__chkstk:
|
37
|
+
xchg (%rsp),%rbp /* store ebp, get ret.addr */
|
38
|
+
push %rbp /* push ret.addr */
|
39
|
+
lea 8(%rsp),%rbp /* setup frame ptr */
|
40
|
+
push %rcx /* save ecx */
|
41
|
+
mov %rbp,%rcx
|
42
|
+
movslq %eax,%rax
|
43
|
+
P0:
|
44
|
+
sub $4096,%rcx
|
45
|
+
test %rax,(%rcx)
|
46
|
+
sub $4096,%rax
|
47
|
+
cmp $4096,%rax
|
48
|
+
jge P0
|
49
|
+
sub %rax,%rcx
|
50
|
+
test %rax,(%rcx)
|
51
|
+
|
52
|
+
mov %rsp,%rax
|
53
|
+
mov %rcx,%rsp
|
54
|
+
mov (%rax),%rcx /* restore ecx */
|
55
|
+
jmp *8(%rax)
|
56
|
+
|
57
|
+
/* ---------------------------------------------- */
|
58
|
+
/* setjmp/longjmp support */
|
59
|
+
|
60
|
+
.globl tinyc_getbp
|
61
|
+
tinyc_getbp:
|
62
|
+
mov %rbp,%rax
|
63
|
+
ret
|
64
|
+
|
65
|
+
/* ---------------------------------------------- */
|
66
|
+
#endif
|
67
|
+
/* ---------------------------------------------- */
|
68
|
+
|
69
|
+
|
70
|
+
/* ---------------------------------------------- */
|
71
|
+
#ifndef TCC_TARGET_X86_64
|
72
|
+
/* ---------------------------------------------- */
|
73
|
+
|
74
|
+
/*
|
75
|
+
int _except_handler3(
|
76
|
+
PEXCEPTION_RECORD exception_record,
|
77
|
+
PEXCEPTION_REGISTRATION registration,
|
78
|
+
PCONTEXT context,
|
79
|
+
PEXCEPTION_REGISTRATION dispatcher
|
80
|
+
);
|
81
|
+
|
82
|
+
int __cdecl _XcptFilter(
|
83
|
+
unsigned long xcptnum,
|
84
|
+
PEXCEPTION_POINTERS pxcptinfoptrs
|
85
|
+
);
|
86
|
+
|
87
|
+
struct _sehrec {
|
88
|
+
void *esp; // 0
|
89
|
+
void *exception_pointers; // 1
|
90
|
+
void *prev; // 2
|
91
|
+
void *handler; // 3
|
92
|
+
void *scopetable; // 4
|
93
|
+
int trylevel; // 5
|
94
|
+
void *ebp // 6
|
95
|
+
};
|
96
|
+
|
97
|
+
// this is what the assembler code below means:
|
98
|
+
__try
|
99
|
+
{
|
100
|
+
// ...
|
101
|
+
}
|
102
|
+
__except (_XcptFilter(GetExceptionCode(), GetExceptionInformation()))
|
103
|
+
{
|
104
|
+
exit(GetExceptionCode());
|
105
|
+
}
|
106
|
+
*/
|
107
|
+
|
108
|
+
.globl _exception_info
|
109
|
+
_exception_info:
|
110
|
+
mov 1*4-24(%ebp),%eax
|
111
|
+
ret
|
112
|
+
|
113
|
+
.globl _exception_code
|
114
|
+
_exception_code:
|
115
|
+
call _exception_info
|
116
|
+
mov (%eax),%eax
|
117
|
+
mov (%eax),%eax
|
118
|
+
ret
|
119
|
+
|
120
|
+
seh_filter:
|
121
|
+
call _exception_info
|
122
|
+
push %eax
|
123
|
+
call _exception_code
|
124
|
+
push %eax
|
125
|
+
call _XcptFilter
|
126
|
+
add $ 8,%esp
|
127
|
+
ret
|
128
|
+
|
129
|
+
seh_except:
|
130
|
+
mov 0*4-24(%ebp),%esp
|
131
|
+
call _exception_code
|
132
|
+
push %eax
|
133
|
+
call _exit
|
134
|
+
|
135
|
+
// msvcrt wants scopetables aligned and in read-only segment (using .text)
|
136
|
+
.align 4
|
137
|
+
seh_scopetable:
|
138
|
+
.long -1
|
139
|
+
.long seh_filter
|
140
|
+
.long seh_except
|
141
|
+
|
142
|
+
seh_handler:
|
143
|
+
jmp _except_handler3
|
144
|
+
|
145
|
+
.globl ___try__
|
146
|
+
___try__:
|
147
|
+
.globl __try__
|
148
|
+
__try__:
|
149
|
+
push %ebp
|
150
|
+
mov 8(%esp),%ebp
|
151
|
+
|
152
|
+
// void *esp;
|
153
|
+
lea 12(%esp),%eax
|
154
|
+
mov %eax,0*4(%ebp)
|
155
|
+
|
156
|
+
// void *exception_pointers;
|
157
|
+
xor %eax,%eax
|
158
|
+
mov %eax,1*4(%ebp)
|
159
|
+
|
160
|
+
// void *prev;
|
161
|
+
mov %fs:0,%eax
|
162
|
+
mov %eax,2*4(%ebp)
|
163
|
+
|
164
|
+
// void *handler;
|
165
|
+
mov $ seh_handler,%eax
|
166
|
+
mov %eax,3*4(%ebp)
|
167
|
+
|
168
|
+
// void *scopetable;
|
169
|
+
mov $ seh_scopetable,%eax
|
170
|
+
mov %eax,4*4(%ebp)
|
171
|
+
|
172
|
+
// int trylevel;
|
173
|
+
xor %eax,%eax
|
174
|
+
mov %eax,5*4(%ebp)
|
175
|
+
|
176
|
+
// register new SEH
|
177
|
+
lea 2*4(%ebp),%eax
|
178
|
+
mov %eax,%fs:0
|
179
|
+
|
180
|
+
pop %ebp
|
181
|
+
ret
|
182
|
+
|
183
|
+
/* ---------------------------------------------- */
|
184
|
+
#else
|
185
|
+
/* ---------------------------------------------- */
|
186
|
+
|
187
|
+
/* SEH on x86-64 not implemented */
|
188
|
+
|
189
|
+
/* ---------------------------------------------- */
|
190
|
+
#endif
|
191
|
+
/* ---------------------------------------------- */
|
@@ -0,0 +1,34 @@
|
|
1
|
+
// =============================================
|
2
|
+
// crt1.c
|
3
|
+
|
4
|
+
#include <stdlib.h>
|
5
|
+
|
6
|
+
#define __UNKNOWN_APP 0
|
7
|
+
#define __CONSOLE_APP 1
|
8
|
+
#define __GUI_APP 2
|
9
|
+
void __set_app_type(int);
|
10
|
+
void _controlfp(unsigned a, unsigned b);
|
11
|
+
|
12
|
+
typedef struct
|
13
|
+
{
|
14
|
+
int newmode;
|
15
|
+
} _startupinfo;
|
16
|
+
|
17
|
+
void __getmainargs(int *pargc, char ***pargv, char ***penv, int globb, _startupinfo*);
|
18
|
+
int main(int argc, char **argv, char **env);
|
19
|
+
|
20
|
+
int _start(void)
|
21
|
+
{
|
22
|
+
__TRY__
|
23
|
+
int argc; char **argv; char **env; int ret;
|
24
|
+
_startupinfo start_info = {0};
|
25
|
+
|
26
|
+
_controlfp(0x10000, 0x30000);
|
27
|
+
__set_app_type(__CONSOLE_APP);
|
28
|
+
__getmainargs(&argc, &argv, &env, 0, &start_info);
|
29
|
+
|
30
|
+
ret = main(argc, argv, env);
|
31
|
+
exit(ret);
|
32
|
+
}
|
33
|
+
|
34
|
+
// =============================================
|
@@ -0,0 +1,13 @@
|
|
1
|
+
//+---------------------------------------------------------------------------
|
2
|
+
|
3
|
+
#include <windows.h>
|
4
|
+
|
5
|
+
BOOL WINAPI DllMain (HANDLE hDll, DWORD dwReason, LPVOID lpReserved);
|
6
|
+
|
7
|
+
BOOL WINAPI _dllstart(HANDLE hDll, DWORD dwReason, LPVOID lpReserved)
|
8
|
+
{
|
9
|
+
BOOL bRet;
|
10
|
+
bRet = DllMain (hDll, dwReason, lpReserved);
|
11
|
+
return bRet;
|
12
|
+
}
|
13
|
+
|
@@ -0,0 +1,337 @@
|
|
1
|
+
LIBRARY gdi32.dll
|
2
|
+
|
3
|
+
EXPORTS
|
4
|
+
AbortDoc
|
5
|
+
AbortPath
|
6
|
+
AddFontResourceA
|
7
|
+
AddFontResourceW
|
8
|
+
AngleArc
|
9
|
+
AnimatePalette
|
10
|
+
Arc
|
11
|
+
ArcTo
|
12
|
+
BeginPath
|
13
|
+
BitBlt
|
14
|
+
ByeByeGDI
|
15
|
+
CancelDC
|
16
|
+
CheckColorsInGamut
|
17
|
+
ChoosePixelFormat
|
18
|
+
Chord
|
19
|
+
CloseEnhMetaFile
|
20
|
+
CloseFigure
|
21
|
+
CloseMetaFile
|
22
|
+
ColorCorrectPalette
|
23
|
+
ColorMatchToTarget
|
24
|
+
CombineRgn
|
25
|
+
CombineTransform
|
26
|
+
CopyEnhMetaFileA
|
27
|
+
CopyEnhMetaFileW
|
28
|
+
CopyMetaFileA
|
29
|
+
CopyMetaFileW
|
30
|
+
CreateBitmap
|
31
|
+
CreateBitmapIndirect
|
32
|
+
CreateBrushIndirect
|
33
|
+
CreateColorSpaceA
|
34
|
+
CreateColorSpaceW
|
35
|
+
CreateCompatibleBitmap
|
36
|
+
CreateCompatibleDC
|
37
|
+
CreateDCA
|
38
|
+
CreateDCW
|
39
|
+
CreateDIBPatternBrush
|
40
|
+
CreateDIBPatternBrushPt
|
41
|
+
CreateDIBSection
|
42
|
+
CreateDIBitmap
|
43
|
+
CreateDiscardableBitmap
|
44
|
+
CreateEllipticRgn
|
45
|
+
CreateEllipticRgnIndirect
|
46
|
+
CreateEnhMetaFileA
|
47
|
+
CreateEnhMetaFileW
|
48
|
+
CreateFontA
|
49
|
+
CreateFontIndirectA
|
50
|
+
CreateFontIndirectW
|
51
|
+
CreateFontW
|
52
|
+
CreateHalftonePalette
|
53
|
+
CreateHatchBrush
|
54
|
+
CreateICA
|
55
|
+
CreateICW
|
56
|
+
CreateMetaFileA
|
57
|
+
CreateMetaFileW
|
58
|
+
CreatePalette
|
59
|
+
CreatePatternBrush
|
60
|
+
CreatePen
|
61
|
+
CreatePenIndirect
|
62
|
+
CreatePolyPolygonRgn
|
63
|
+
CreatePolygonRgn
|
64
|
+
CreateRectRgn
|
65
|
+
CreateRectRgnIndirect
|
66
|
+
CreateRoundRectRgn
|
67
|
+
CreateScalableFontResourceA
|
68
|
+
CreateScalableFontResourceW
|
69
|
+
CreateSolidBrush
|
70
|
+
DPtoLP
|
71
|
+
DeleteColorSpace
|
72
|
+
DeleteDC
|
73
|
+
DeleteEnhMetaFile
|
74
|
+
DeleteMetaFile
|
75
|
+
DeleteObject
|
76
|
+
DescribePixelFormat
|
77
|
+
DeviceCapabilitiesEx
|
78
|
+
DeviceCapabilitiesExA
|
79
|
+
DeviceCapabilitiesExW
|
80
|
+
DrawEscape
|
81
|
+
Ellipse
|
82
|
+
EnableEUDC
|
83
|
+
EndDoc
|
84
|
+
EndPage
|
85
|
+
EndPath
|
86
|
+
EnumEnhMetaFile
|
87
|
+
EnumFontFamiliesA
|
88
|
+
EnumFontFamiliesExA
|
89
|
+
EnumFontFamiliesExW
|
90
|
+
EnumFontFamiliesW
|
91
|
+
EnumFontsA
|
92
|
+
EnumFontsW
|
93
|
+
EnumICMProfilesA
|
94
|
+
EnumICMProfilesW
|
95
|
+
EnumMetaFile
|
96
|
+
EnumObjects
|
97
|
+
EqualRgn
|
98
|
+
Escape
|
99
|
+
ExcludeClipRect
|
100
|
+
ExtCreatePen
|
101
|
+
ExtCreateRegion
|
102
|
+
ExtEscape
|
103
|
+
ExtFloodFill
|
104
|
+
ExtSelectClipRgn
|
105
|
+
ExtTextOutA
|
106
|
+
ExtTextOutW
|
107
|
+
FillPath
|
108
|
+
FillRgn
|
109
|
+
FixBrushOrgEx
|
110
|
+
FlattenPath
|
111
|
+
FloodFill
|
112
|
+
FrameRgn
|
113
|
+
GdiComment
|
114
|
+
GdiFlush
|
115
|
+
GdiGetBatchLimit
|
116
|
+
GdiPlayDCScript
|
117
|
+
GdiPlayJournal
|
118
|
+
GdiPlayScript
|
119
|
+
GdiSetBatchLimit
|
120
|
+
GetArcDirection
|
121
|
+
GetAspectRatioFilterEx
|
122
|
+
GetBitmapBits
|
123
|
+
GetBitmapDimensionEx
|
124
|
+
GetBkColor
|
125
|
+
GetBkMode
|
126
|
+
GetBoundsRect
|
127
|
+
GetBrushOrgEx
|
128
|
+
GetCharABCWidthsA
|
129
|
+
GetCharABCWidthsFloatA
|
130
|
+
GetCharABCWidthsFloatW
|
131
|
+
GetCharABCWidthsW
|
132
|
+
GetCharWidth32A
|
133
|
+
GetCharWidth32W
|
134
|
+
GetCharWidthA
|
135
|
+
GetCharWidthFloatA
|
136
|
+
GetCharWidthFloatW
|
137
|
+
GetCharWidthW
|
138
|
+
GetCharacterPlacementA
|
139
|
+
GetCharacterPlacementW
|
140
|
+
GetClipBox
|
141
|
+
GetClipRgn
|
142
|
+
GetColorAdjustment
|
143
|
+
GetColorSpace
|
144
|
+
GetCurrentObject
|
145
|
+
GetCurrentPositionEx
|
146
|
+
GetDCOrgEx
|
147
|
+
GetDIBColorTable
|
148
|
+
GetDIBits
|
149
|
+
GetDeviceCaps
|
150
|
+
GetDeviceGammaRamp
|
151
|
+
GetEnhMetaFileA
|
152
|
+
GetEnhMetaFileBits
|
153
|
+
GetEnhMetaFileDescriptionA
|
154
|
+
GetEnhMetaFileDescriptionW
|
155
|
+
GetEnhMetaFileHeader
|
156
|
+
GetEnhMetaFilePaletteEntries
|
157
|
+
GetEnhMetaFileW
|
158
|
+
GetFontData
|
159
|
+
GetFontLanguageInfo
|
160
|
+
GetFontResourceInfo
|
161
|
+
GetGlyphOutline
|
162
|
+
GetGlyphOutlineA
|
163
|
+
GetGlyphOutlineW
|
164
|
+
GetGraphicsMode
|
165
|
+
GetICMProfileA
|
166
|
+
GetICMProfileW
|
167
|
+
GetKerningPairs
|
168
|
+
GetKerningPairsA
|
169
|
+
GetKerningPairsW
|
170
|
+
GetLayout
|
171
|
+
GetLogColorSpaceA
|
172
|
+
GetLogColorSpaceW
|
173
|
+
GetMapMode
|
174
|
+
GetMetaFileA
|
175
|
+
GetMetaFileBitsEx
|
176
|
+
GetMetaFileW
|
177
|
+
GetMetaRgn
|
178
|
+
GetMiterLimit
|
179
|
+
GetNearestColor
|
180
|
+
GetNearestPaletteIndex
|
181
|
+
GetObjectA
|
182
|
+
GetObjectType
|
183
|
+
GetObjectW
|
184
|
+
GetOutlineTextMetricsA
|
185
|
+
GetOutlineTextMetricsW
|
186
|
+
GetPaletteEntries
|
187
|
+
GetPath
|
188
|
+
GetPixel
|
189
|
+
GetPixelFormat
|
190
|
+
GetPolyFillMode
|
191
|
+
GetROP2
|
192
|
+
GetRandomRgn
|
193
|
+
GetRasterizerCaps
|
194
|
+
GetRegionData
|
195
|
+
GetRgnBox
|
196
|
+
GetStockObject
|
197
|
+
GetStretchBltMode
|
198
|
+
GetSystemPaletteEntries
|
199
|
+
GetSystemPaletteUse
|
200
|
+
GetTextAlign
|
201
|
+
GetTextCharacterExtra
|
202
|
+
GetTextCharset
|
203
|
+
GetTextCharsetInfo
|
204
|
+
GetTextColor
|
205
|
+
GetTextExtentExPointA
|
206
|
+
GetTextExtentExPointW
|
207
|
+
GetTextExtentPoint32A
|
208
|
+
GetTextExtentPoint32W
|
209
|
+
GetTextExtentPointA
|
210
|
+
GetTextExtentPointW
|
211
|
+
GetTextFaceA
|
212
|
+
GetTextFaceW
|
213
|
+
GetTextMetricsA
|
214
|
+
GetTextMetricsW
|
215
|
+
GetViewportExtEx
|
216
|
+
GetViewportOrgEx
|
217
|
+
GetWinMetaFileBits
|
218
|
+
GetWindowExtEx
|
219
|
+
GetWindowOrgEx
|
220
|
+
GetWorldTransform
|
221
|
+
IntersectClipRect
|
222
|
+
InvertRgn
|
223
|
+
LPtoDP
|
224
|
+
LineDDA
|
225
|
+
LineTo
|
226
|
+
MaskBlt
|
227
|
+
ModifyWorldTransform
|
228
|
+
MoveToEx
|
229
|
+
OffsetClipRgn
|
230
|
+
OffsetRgn
|
231
|
+
OffsetViewportOrgEx
|
232
|
+
OffsetWindowOrgEx
|
233
|
+
PaintRgn
|
234
|
+
PatBlt
|
235
|
+
PathToRegion
|
236
|
+
Pie
|
237
|
+
PlayEnhMetaFile
|
238
|
+
PlayEnhMetaFileRecord
|
239
|
+
PlayMetaFile
|
240
|
+
PlayMetaFileRecord
|
241
|
+
PlgBlt
|
242
|
+
PolyBezier
|
243
|
+
PolyBezierTo
|
244
|
+
PolyDraw
|
245
|
+
PolyPolygon
|
246
|
+
PolyPolyline
|
247
|
+
PolyTextOutA
|
248
|
+
PolyTextOutW
|
249
|
+
Polygon
|
250
|
+
Polyline
|
251
|
+
PolylineTo
|
252
|
+
PtInRegion
|
253
|
+
PtVisible
|
254
|
+
RealizePalette
|
255
|
+
RectInRegion
|
256
|
+
RectVisible
|
257
|
+
Rectangle
|
258
|
+
RemoveFontResourceA
|
259
|
+
RemoveFontResourceW
|
260
|
+
ResetDCA
|
261
|
+
ResetDCW
|
262
|
+
ResizePalette
|
263
|
+
RestoreDC
|
264
|
+
RoundRect
|
265
|
+
SaveDC
|
266
|
+
ScaleViewportExtEx
|
267
|
+
ScaleWindowExtEx
|
268
|
+
SelectClipPath
|
269
|
+
SelectClipRgn
|
270
|
+
SelectObject
|
271
|
+
SelectPalette
|
272
|
+
SetAbortProc
|
273
|
+
SetArcDirection
|
274
|
+
SetBitmapBits
|
275
|
+
SetBitmapDimensionEx
|
276
|
+
SetBkColor
|
277
|
+
SetBkMode
|
278
|
+
SetBoundsRect
|
279
|
+
SetBrushOrgEx
|
280
|
+
SetColorAdjustment
|
281
|
+
SetColorSpace
|
282
|
+
SetDIBColorTable
|
283
|
+
SetDIBits
|
284
|
+
SetDIBitsToDevice
|
285
|
+
SetDeviceGammaRamp
|
286
|
+
SetEnhMetaFileBits
|
287
|
+
SetFontEnumeration
|
288
|
+
SetGraphicsMode
|
289
|
+
SetICMMode
|
290
|
+
SetICMProfileA
|
291
|
+
SetICMProfileW
|
292
|
+
SetLayout
|
293
|
+
SetMagicColors
|
294
|
+
SetMapMode
|
295
|
+
SetMapperFlags
|
296
|
+
SetMetaFileBitsEx
|
297
|
+
SetMetaRgn
|
298
|
+
SetMiterLimit
|
299
|
+
SetObjectOwner
|
300
|
+
SetPaletteEntries
|
301
|
+
SetPixel
|
302
|
+
SetPixelFormat
|
303
|
+
SetPixelV
|
304
|
+
SetPolyFillMode
|
305
|
+
SetROP2
|
306
|
+
SetRectRgn
|
307
|
+
SetStretchBltMode
|
308
|
+
SetSystemPaletteUse
|
309
|
+
SetTextAlign
|
310
|
+
SetTextCharacterExtra
|
311
|
+
SetTextColor
|
312
|
+
SetTextJustification
|
313
|
+
SetViewportExtEx
|
314
|
+
SetViewportOrgEx
|
315
|
+
SetWinMetaFileBits
|
316
|
+
SetWindowExtEx
|
317
|
+
SetWindowOrgEx
|
318
|
+
SetWorldTransform
|
319
|
+
StartDocA
|
320
|
+
StartDocW
|
321
|
+
StartPage
|
322
|
+
StretchBlt
|
323
|
+
StretchDIBits
|
324
|
+
StrokeAndFillPath
|
325
|
+
StrokePath
|
326
|
+
SwapBuffers
|
327
|
+
TextOutA
|
328
|
+
TextOutW
|
329
|
+
TranslateCharsetInfo
|
330
|
+
UnrealizeObject
|
331
|
+
UpdateColors
|
332
|
+
UpdateICMRegKeyA
|
333
|
+
UpdateICMRegKeyW
|
334
|
+
WidenPath
|
335
|
+
gdiPlaySpoolStream
|
336
|
+
pfnRealizePalette
|
337
|
+
pfnSelectPalette
|