esruby 0.0.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 +21 -0
- data/README.md +22 -0
- data/bin/esruby +34 -0
- data/lib/esruby.rb +26 -0
- data/lib/esruby/build.rb +140 -0
- data/lib/esruby/build/configuration.rb +77 -0
- data/lib/esruby/gem.rb +5 -0
- data/lib/esruby/gem/specification.rb +35 -0
- data/resources/build_config.eruby +53 -0
- data/resources/cpp/esruby.cpp +64 -0
- data/resources/cpp/esruby.hpp +42 -0
- data/resources/cpp/main.cpp +9 -0
- data/resources/js/esruby.js +45 -0
- data/resources/mruby/AUTHORS +40 -0
- data/resources/mruby/CONTRIBUTING.md +68 -0
- data/resources/mruby/LEGAL +6 -0
- data/resources/mruby/MITL +20 -0
- data/resources/mruby/Makefile +17 -0
- data/resources/mruby/NEWS +13 -0
- data/resources/mruby/README.md +92 -0
- data/resources/mruby/Rakefile +152 -0
- data/resources/mruby/TODO +10 -0
- data/resources/mruby/appveyor.yml +38 -0
- data/resources/mruby/appveyor_config.rb +50 -0
- data/resources/mruby/benchmark/bm_ao_render.rb +314 -0
- data/resources/mruby/benchmark/bm_app_lc_fizzbuzz.rb +52 -0
- data/resources/mruby/benchmark/bm_fib.rb +7 -0
- data/resources/mruby/benchmark/bm_so_lists.rb +47 -0
- data/resources/mruby/benchmark/build_config_boxing.rb +28 -0
- data/resources/mruby/benchmark/build_config_cc.rb +13 -0
- data/resources/mruby/benchmark/plot.gpl +5 -0
- data/resources/mruby/bin/mirb +0 -0
- data/resources/mruby/bin/mrbc +0 -0
- data/resources/mruby/bin/mruby +0 -0
- data/resources/mruby/bin/mruby-strip +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/README.md +82 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/mrbgem.rake +63 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/mrblib/regexp_pcre.rb +232 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/mrblib/string_pcre.rb +333 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/132html +313 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/AUTHORS +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/CMakeLists.txt +959 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/COPYING +5 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/ChangeLog +4981 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/CheckMan +67 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/CleanTxt +113 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/Detrail +35 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/HACKING +473 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/INSTALL +370 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/LICENCE +92 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/Makefile.am +877 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/Makefile.in +2917 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/NEWS +611 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/NON-AUTOTOOLS-BUILD +639 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/NON-UNIX-USE +7 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/PrepareRelease +253 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/README +935 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/RunGrepTest +551 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/RunTest +1015 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/RunTest.bat +616 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/aclocal.m4 +1230 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/autom4te.cache/output.0 +21280 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/autom4te.cache/output.1 +21280 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/autom4te.cache/requests +273 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/autom4te.cache/traces.0 +2421 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/autom4te.cache/traces.1 +1144 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/cmake/COPYING-CMAKE-SCRIPTS +22 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/cmake/FindEditline.cmake +17 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/cmake/FindPackageHandleStandardArgs.cmake +58 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/cmake/FindReadline.cmake +29 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/compile +343 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config-cmake.h.in +54 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config.guess +1552 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config.h +392 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config.h.generic +392 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config.h.in +343 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/config.sub +1804 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/configure +21280 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/configure.ac +1082 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/depcomp +708 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/dftables.c +212 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/index.html +180 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre-config.html +109 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre.html +204 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre16.html +383 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_assign_jit_stack.html +76 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_compile.html +108 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_compile2.html +112 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_config.html +91 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_copy_named_substring.html +65 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_copy_substring.html +61 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_dfa_exec.html +128 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_exec.html +110 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_free_study.html +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_free_substring.html +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_free_substring_list.html +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_fullinfo.html +108 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_get_named_substring.html +68 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_get_stringnumber.html +57 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_get_stringtable_entries.html +60 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_get_substring.html +64 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_get_substring_list.html +61 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_jit_exec.html +108 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_jit_stack_alloc.html +55 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_jit_stack_free.html +48 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_maketables.html +48 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_pattern_to_host_byte_order.html +58 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_refcount.html +51 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_study.html +68 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_utf16_to_host_byte_order.html +57 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcre_version.html +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcreapi.html +2786 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrebuild.html +517 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrecallout.html +243 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrecompat.html +216 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrecpp.html +368 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcredemo.html +426 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcregrep.html +757 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrejit.html +458 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrelimits.html +86 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrematching.html +233 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrepartial.html +474 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrepattern.html +2953 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcreperform.html +195 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcreposix.html +292 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcreprecompile.html +158 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcresample.html +110 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcrestack.html +225 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcresyntax.html +521 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcretest.html +1082 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/html/pcreunicode.html +270 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/index.html.src +180 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre-config.1 +92 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre-config.txt +86 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre.3 +202 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre.txt +9909 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre16.3 +390 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre32.3 +389 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_assign_jit_stack.3 +61 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_compile.3 +98 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_compile2.3 +106 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_config.3 +76 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_copy_named_substring.3 +59 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_copy_substring.3 +52 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_dfa_exec.3 +125 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_exec.3 +103 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_free_study.3 +31 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_free_substring.3 +31 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_free_substring_list.3 +31 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_fullinfo.3 +95 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_get_named_substring.3 +62 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_get_stringnumber.3 +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_get_stringtable_entries.3 +48 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_get_substring.3 +55 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_get_substring_list.3 +49 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_jit_exec.3 +104 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_jit_stack_alloc.3 +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_jit_stack_free.3 +35 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_maketables.3 +33 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_pattern_to_host_byte_order.3 +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_refcount.3 +36 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_study.3 +56 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_utf16_to_host_byte_order.3 +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_utf32_to_host_byte_order.3 +46 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcre_version.3 +31 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcreapi.3 +2823 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrebuild.3 +520 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrecallout.3 +214 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrecompat.3 +185 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrecpp.3 +348 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcregrep.1 +679 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcregrep.txt +740 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrejit.3 +437 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrelimits.3 +67 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrematching.3 +206 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrepartial.3 +445 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrepattern.3 +2983 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcreperform.3 +177 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcreposix.3 +270 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcreprecompile.3 +151 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcresample.3 +99 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcrestack.3 +215 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcresyntax.3 +496 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcretest.1 +1079 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcretest.txt +1012 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/pcreunicode.3 +255 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/doc/perltest.txt +42 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/install-sh +527 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/libpcre.pc.in +12 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/libpcre16.pc.in +12 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/libpcre32.pc.in +12 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/libpcrecpp.pc.in +12 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/libpcreposix.pc.in +13 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/ltmain.sh +9636 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/ax_pthread.m4 +309 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/libtool.m4 +7844 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/ltoptions.m4 +369 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/ltsugar.m4 +123 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/ltversion.m4 +23 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/lt~obsolete.m4 +98 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/m4/pcre_visibility.m4 +89 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/makevp.bat +66 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/makevp_c.txt +20 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/makevp_l.txt +20 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/missing +331 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre-config.in +133 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre.h +653 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre.h.generic +653 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre.h.in +653 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_byte_order.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_chartables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_compile.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_config.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_dfa_exec.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_exec.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_fullinfo.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_get.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_globals.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_jit_compile.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_maketables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_newline.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_ord2utf16.c +90 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_printint.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_refcount.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_string_utils.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_study.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_tables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_ucd.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_utf16_utils.c +130 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_valid_utf16.c +156 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_version.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre16_xclass.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_byte_order.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_chartables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_compile.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_config.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_dfa_exec.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_exec.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_fullinfo.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_get.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_globals.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_jit_compile.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_maketables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_newline.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_ord2utf32.c +82 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_printint.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_refcount.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_string_utils.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_study.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_tables.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_ucd.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_utf32_utils.c +141 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_valid_utf32.c +131 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_version.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre32_xclass.c +45 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_byte_order.c +318 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_chartables.c +198 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_chartables.c.dist +198 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_compile.c +8386 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_config.c +186 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_dfa_exec.c +3582 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_exec.c +7049 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_fullinfo.c +231 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_get.c +662 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_globals.c +84 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_internal.h +2744 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_jit_compile.c +8560 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_jit_test.c +1614 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_maketables.c +151 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_newline.c +210 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_ord2utf8.c +94 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_printint.c +766 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_refcount.c +92 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_scanner.cc +199 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_scanner.h +172 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_scanner_unittest.cc +159 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_string_utils.c +211 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_stringpiece.cc +43 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_stringpiece.h.in +179 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_stringpiece_unittest.cc +150 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_study.c +1562 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_tables.c +655 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_ucd.c +3298 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_valid_utf8.c +312 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_version.c +98 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcre_xclass.c +198 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcrecpp.cc +922 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcrecpp.h +710 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcrecpp_internal.h +71 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcrecpp_unittest.cc +1291 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcrecpparg.h.in +174 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcredemo.c +406 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcregexp.pas +845 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcregrep.c +3180 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcreposix.c +419 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcreposix.h +146 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/pcretest.c +5488 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/perltest.pl +237 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitConfig.h +110 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitConfigInternal.h +484 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitExecAllocator.c +289 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitLir.c +1766 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitLir.h +985 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeARM_Thumb2.c +2008 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeARM_v5.c +2515 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeMIPS_32.c +404 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeMIPS_common.c +1881 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativePPC_32.c +269 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativePPC_64.c +421 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativePPC_common.c +2014 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeSPARC_32.c +164 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeSPARC_common.c +1348 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeX86_32.c +547 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeX86_64.c +810 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitNativeX86_common.c +2836 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/sljit/sljitUtils.c +332 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepbinary +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepfilelist +3 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepinput +611 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepinput3 +15 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepinput8 +11 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepinputv +4 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepinputx +43 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/greplist +7 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepoutput +707 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepoutput8 +12 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/grepoutputN +16 -1
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/greppatN4 +2 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved16 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved16BE-1 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved16BE-2 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved16LE-1 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved16LE-2 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved32 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved32BE-1 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved32BE-2 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved32LE-1 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved32LE-2 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/saved8 +0 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput1 +5306 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput10 +1337 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput11 +135 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput12 +89 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput13 +9 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput14 +329 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput15 +430 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput16 +35 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput17 +296 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput18 +296 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput19 +22 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput2 +3813 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput20 +19 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput21 +16 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput22 +13 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput23 +16 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput24 +77 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput25 +32 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput26 +80 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput3 +95 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput4 +624 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput5 +772 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput6 +1319 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput7 +672 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput8 +4801 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinput9 +717 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testinputEBC +121 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput1 +8798 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput10 +2726 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput11-16 +713 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput11-32 +713 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput11-8 +713 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput12 +181 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput13 +21 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput14 +476 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput15 +1269 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput16 +121 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput17 +505 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput18-16 +1022 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput18-32 +1019 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput19 +88 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput2 +12484 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput20 +27 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput21-16 +90 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput21-32 +90 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput22-16 +71 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput22-32 +71 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput23 +42 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput24 +145 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput25 +79 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput26 +148 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput3 +169 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput4 +1094 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput5 +1849 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput6 +2137 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput7 +1473 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput8 +8019 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutput9 +1371 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/testoutputEBC +182 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/wintestinput3 +91 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/testdata/wintestoutput3 +166 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/pcre/ucp.h +197 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/run_test.rb +23 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/src/mruby_regexp_pcre.c +364 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/test/matchdata.rb +94 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/test/regexp.rb +264 -0
- data/resources/mruby/build/mrbgems/mruby-regexp-pcre/test/string.rb +201 -0
- data/resources/mruby/build_config.rb +152 -0
- data/resources/mruby/doc/guides/compile.md +488 -0
- data/resources/mruby/doc/guides/debugger.md +370 -0
- data/resources/mruby/doc/guides/gc-arena-howto.md +177 -0
- data/resources/mruby/doc/guides/mrbconf.md +146 -0
- data/resources/mruby/doc/guides/mrbgems.md +340 -0
- data/resources/mruby/doc/limitations.md +187 -0
- data/resources/mruby/examples/mrbgems/c_and_ruby_extension_example/README.md +4 -0
- data/resources/mruby/examples/mrbgems/c_and_ruby_extension_example/mrbgem.rake +23 -0
- data/resources/mruby/examples/mrbgems/c_and_ruby_extension_example/mrblib/example.rb +5 -0
- data/resources/mruby/examples/mrbgems/c_and_ruby_extension_example/src/example.c +20 -0
- data/resources/mruby/examples/mrbgems/c_and_ruby_extension_example/test/example.rb +7 -0
- data/resources/mruby/examples/mrbgems/c_extension_example/README.md +4 -0
- data/resources/mruby/examples/mrbgems/c_extension_example/mrbgem.rake +23 -0
- data/resources/mruby/examples/mrbgems/c_extension_example/src/example.c +20 -0
- data/resources/mruby/examples/mrbgems/c_extension_example/test/example.c +7 -0
- data/resources/mruby/examples/mrbgems/c_extension_example/test/example.rb +3 -0
- data/resources/mruby/examples/mrbgems/ruby_extension_example/README.md +4 -0
- data/resources/mruby/examples/mrbgems/ruby_extension_example/mrbgem.rake +25 -0
- data/resources/mruby/examples/mrbgems/ruby_extension_example/mrblib/example.rb +5 -0
- data/resources/mruby/examples/mrbgems/ruby_extension_example/test/example.rb +3 -0
- data/resources/mruby/examples/targets/build_config_ArduinoDue.rb +90 -0
- data/resources/mruby/examples/targets/build_config_IntelEdison.rb +69 -0
- data/resources/mruby/examples/targets/build_config_IntelGalileo.rb +106 -0
- data/resources/mruby/examples/targets/build_config_RX630.rb +81 -0
- data/resources/mruby/examples/targets/build_config_android_arm64-v8a.rb +26 -0
- data/resources/mruby/examples/targets/build_config_android_armeabi.rb +26 -0
- data/resources/mruby/examples/targets/build_config_android_armeabi_v7a_neon_hard.rb +28 -0
- data/resources/mruby/examples/targets/build_config_chipKITMax32.rb +86 -0
- data/resources/mruby/include/mrbconf.h +145 -0
- data/resources/mruby/include/mruby.h +1280 -0
- data/resources/mruby/include/mruby/array.h +279 -0
- data/resources/mruby/include/mruby/boxing_nan.h +102 -0
- data/resources/mruby/include/mruby/boxing_no.h +56 -0
- data/resources/mruby/include/mruby/boxing_word.h +136 -0
- data/resources/mruby/include/mruby/class.h +94 -0
- data/resources/mruby/include/mruby/common.h +72 -0
- data/resources/mruby/include/mruby/compile.h +194 -0
- data/resources/mruby/include/mruby/data.h +75 -0
- data/resources/mruby/include/mruby/debug.h +66 -0
- data/resources/mruby/include/mruby/dump.h +196 -0
- data/resources/mruby/include/mruby/error.h +75 -0
- data/resources/mruby/include/mruby/gc.h +91 -0
- data/resources/mruby/include/mruby/hash.h +182 -0
- data/resources/mruby/include/mruby/irep.h +62 -0
- data/resources/mruby/include/mruby/istruct.h +47 -0
- data/resources/mruby/include/mruby/khash.h +274 -0
- data/resources/mruby/include/mruby/numeric.h +161 -0
- data/resources/mruby/include/mruby/object.h +45 -0
- data/resources/mruby/include/mruby/opcode.h +161 -0
- data/resources/mruby/include/mruby/proc.h +131 -0
- data/resources/mruby/include/mruby/range.h +49 -0
- data/resources/mruby/include/mruby/re.h +16 -0
- data/resources/mruby/include/mruby/string.h +440 -0
- data/resources/mruby/include/mruby/throw.h +55 -0
- data/resources/mruby/include/mruby/value.h +309 -0
- data/resources/mruby/include/mruby/variable.h +138 -0
- data/resources/mruby/include/mruby/version.h +110 -0
- data/resources/mruby/lib/mruby-core-ext.rb +79 -0
- data/resources/mruby/lib/mruby/build.rb +355 -0
- data/resources/mruby/lib/mruby/build/command.rb +324 -0
- data/resources/mruby/lib/mruby/build/load_gems.rb +122 -0
- data/resources/mruby/lib/mruby/gem.rb +459 -0
- data/resources/mruby/lib/mruby/source.rb +30 -0
- data/resources/mruby/minirake +484 -0
- data/resources/mruby/mrbgems/default.gembox +82 -0
- data/resources/mruby/mrbgems/full-core.gembox +9 -0
- data/resources/mruby/mrbgems/mruby-array-ext/mrbgem.rake +6 -0
- data/resources/mruby/mrbgems/mruby-array-ext/mrblib/array.rb +935 -0
- data/resources/mruby/mrbgems/mruby-array-ext/src/array.c +246 -0
- data/resources/mruby/mrbgems/mruby-array-ext/test/array.rb +422 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/bintest/mrdb.rb +286 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/bintest/print.rb +701 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/mrbgem.rake +9 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.c +505 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apibreak.h +26 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apilist.c +240 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apilist.h +14 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.c +78 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/apiprint.h +13 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdbreak.c +436 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdmisc.c +502 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdprint.c +58 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/cmdrun.c +64 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.c +759 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdb.h +165 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdbconf.h +16 -0
- data/resources/mruby/mrbgems/mruby-bin-debugger/tools/mrdb/mrdberror.h +20 -0
- data/resources/mruby/mrbgems/mruby-bin-mirb/bintest/mirb.rb +12 -0
- data/resources/mruby/mrbgems/mruby-bin-mirb/mrbgem.rake +33 -0
- data/resources/mruby/mrbgems/mruby-bin-mirb/tools/mirb/mirb.c +611 -0
- data/resources/mruby/mrbgems/mruby-bin-mrbc/mrbgem.rake +16 -0
- data/resources/mruby/mrbgems/mruby-bin-mrbc/tools/mrbc/mrbc.c +336 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby-config/mrbgem.rake +30 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby-config/mruby-config +20 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby-config/mruby-config.bat +42 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby/bintest/mruby.rb +60 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby/mrbgem.rake +12 -0
- data/resources/mruby/mrbgems/mruby-bin-mruby/tools/mruby/mruby.c +254 -0
- data/resources/mruby/mrbgems/mruby-bin-strip/bintest/mruby-strip.rb +73 -0
- data/resources/mruby/mrbgems/mruby-bin-strip/mrbgem.rake +6 -0
- data/resources/mruby/mrbgems/mruby-bin-strip/tools/mruby-strip/mruby-strip.c +155 -0
- data/resources/mruby/mrbgems/mruby-class-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-class-ext/src/class.c +68 -0
- data/resources/mruby/mrbgems/mruby-class-ext/test/module.rb +55 -0
- data/resources/mruby/mrbgems/mruby-compar-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-compar-ext/mrblib/compar.rb +31 -0
- data/resources/mruby/mrbgems/mruby-compiler/bintest/mrbc.rb +30 -0
- data/resources/mruby/mrbgems/mruby-compiler/core/codegen.c +3083 -0
- data/resources/mruby/mrbgems/mruby-compiler/core/keywords +50 -0
- data/resources/mruby/mrbgems/mruby-compiler/core/lex.def +211 -0
- data/resources/mruby/mrbgems/mruby-compiler/core/node.h +118 -0
- data/resources/mruby/mrbgems/mruby-compiler/core/parse.y +6661 -0
- data/resources/mruby/mrbgems/mruby-compiler/mrbgem.rake +40 -0
- data/resources/mruby/mrbgems/mruby-enum-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-enum-ext/mrblib/enum.rb +813 -0
- data/resources/mruby/mrbgems/mruby-enum-ext/test/enum.rb +185 -0
- data/resources/mruby/mrbgems/mruby-enum-lazy/mrbgem.rake +7 -0
- data/resources/mruby/mrbgems/mruby-enum-lazy/mrblib/lazy.rb +178 -0
- data/resources/mruby/mrbgems/mruby-enum-lazy/test/lazy.rb +53 -0
- data/resources/mruby/mrbgems/mruby-enumerator/mrbgem.rake +7 -0
- data/resources/mruby/mrbgems/mruby-enumerator/mrblib/enumerator.rb +645 -0
- data/resources/mruby/mrbgems/mruby-enumerator/test/enumerator.rb +546 -0
- data/resources/mruby/mrbgems/mruby-error/mrbgem.rake +10 -0
- data/resources/mruby/mrbgems/mruby-error/src/exception.c +100 -0
- data/resources/mruby/mrbgems/mruby-error/test/exception.c +59 -0
- data/resources/mruby/mrbgems/mruby-error/test/exception.rb +55 -0
- data/resources/mruby/mrbgems/mruby-eval/mrbgem.rake +7 -0
- data/resources/mruby/mrbgems/mruby-eval/src/eval.c +346 -0
- data/resources/mruby/mrbgems/mruby-eval/test/eval.rb +101 -0
- data/resources/mruby/mrbgems/mruby-exit/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-exit/src/mruby-exit.c +24 -0
- data/resources/mruby/mrbgems/mruby-fiber/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-fiber/src/fiber.c +420 -0
- data/resources/mruby/mrbgems/mruby-fiber/test/fiber.rb +208 -0
- data/resources/mruby/mrbgems/mruby-hash-ext/mrbgem.rake +8 -0
- data/resources/mruby/mrbgems/mruby-hash-ext/mrblib/hash.rb +502 -0
- data/resources/mruby/mrbgems/mruby-hash-ext/src/hash-ext.c +128 -0
- data/resources/mruby/mrbgems/mruby-hash-ext/test/hash.rb +300 -0
- data/resources/mruby/mrbgems/mruby-inline-struct/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-inline-struct/test/inline.c +83 -0
- data/resources/mruby/mrbgems/mruby-inline-struct/test/inline.rb +151 -0
- data/resources/mruby/mrbgems/mruby-io/README.md +193 -0
- data/resources/mruby/mrbgems/mruby-io/include/mruby/ext/io.h +38 -0
- data/resources/mruby/mrbgems/mruby-io/mrbgem.rake +17 -0
- data/resources/mruby/mrbgems/mruby-io/mrblib/file.rb +208 -0
- data/resources/mruby/mrbgems/mruby-io/mrblib/file_constants.rb +29 -0
- data/resources/mruby/mrbgems/mruby-io/mrblib/io.rb +387 -0
- data/resources/mruby/mrbgems/mruby-io/mrblib/kernel.rb +15 -0
- data/resources/mruby/mrbgems/mruby-io/run_test.rb +26 -0
- data/resources/mruby/mrbgems/mruby-io/src/file.c +489 -0
- data/resources/mruby/mrbgems/mruby-io/src/file_test.c +381 -0
- data/resources/mruby/mrbgems/mruby-io/src/io.c +1320 -0
- data/resources/mruby/mrbgems/mruby-io/src/mruby_io_gem.c +20 -0
- data/resources/mruby/mrbgems/mruby-io/test/file.rb +197 -0
- data/resources/mruby/mrbgems/mruby-io/test/file_test.rb +117 -0
- data/resources/mruby/mrbgems/mruby-io/test/gc_filedes.sh +4 -0
- data/resources/mruby/mrbgems/mruby-io/test/io.rb +642 -0
- data/resources/mruby/mrbgems/mruby-io/test/mruby_io_test.c +256 -0
- data/resources/mruby/mrbgems/mruby-kernel-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-kernel-ext/mrblib/kernel.rb +13 -0
- data/resources/mruby/mrbgems/mruby-kernel-ext/src/kernel.c +264 -0
- data/resources/mruby/mrbgems/mruby-kernel-ext/test/kernel.rb +86 -0
- data/resources/mruby/mrbgems/mruby-math/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-math/src/math.c +783 -0
- data/resources/mruby/mrbgems/mruby-math/test/math.rb +152 -0
- data/resources/mruby/mrbgems/mruby-method/README.md +59 -0
- data/resources/mruby/mrbgems/mruby-method/mrbgem.rake +7 -0
- data/resources/mruby/mrbgems/mruby-method/mrblib/kernel.rb +9 -0
- data/resources/mruby/mrbgems/mruby-method/mrblib/method.rb +20 -0
- data/resources/mruby/mrbgems/mruby-method/mrblib/unbound_method.rb +9 -0
- data/resources/mruby/mrbgems/mruby-method/src/method.c +418 -0
- data/resources/mruby/mrbgems/mruby-method/test/method.rb +425 -0
- data/resources/mruby/mrbgems/mruby-numeric-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-numeric-ext/mrblib/numeric_ext.rb +25 -0
- data/resources/mruby/mrbgems/mruby-numeric-ext/src/numeric_ext.c +102 -0
- data/resources/mruby/mrbgems/mruby-numeric-ext/test/numeric.rb +28 -0
- data/resources/mruby/mrbgems/mruby-object-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-object-ext/mrblib/object.rb +19 -0
- data/resources/mruby/mrbgems/mruby-object-ext/src/object.c +112 -0
- data/resources/mruby/mrbgems/mruby-object-ext/test/nil.rb +11 -0
- data/resources/mruby/mrbgems/mruby-object-ext/test/object.rb +53 -0
- data/resources/mruby/mrbgems/mruby-objectspace/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-objectspace/src/mruby_objectspace.c +187 -0
- data/resources/mruby/mrbgems/mruby-objectspace/test/objectspace.rb +60 -0
- data/resources/mruby/mrbgems/mruby-pack/README.md +70 -0
- data/resources/mruby/mrbgems/mruby-pack/mrbgem.rake +7 -0
- data/resources/mruby/mrbgems/mruby-pack/packtest.rb +157 -0
- data/resources/mruby/mrbgems/mruby-pack/run_test.rb +26 -0
- data/resources/mruby/mrbgems/mruby-pack/src/pack.c +1281 -0
- data/resources/mruby/mrbgems/mruby-pack/test/pack.rb +165 -0
- data/resources/mruby/mrbgems/mruby-print/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-print/mrblib/print.rb +64 -0
- data/resources/mruby/mrbgems/mruby-print/src/print.c +64 -0
- data/resources/mruby/mrbgems/mruby-proc-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-proc-ext/mrblib/proc.rb +42 -0
- data/resources/mruby/mrbgems/mruby-proc-ext/src/proc.c +173 -0
- data/resources/mruby/mrbgems/mruby-proc-ext/test/proc.c +62 -0
- data/resources/mruby/mrbgems/mruby-proc-ext/test/proc.rb +96 -0
- data/resources/mruby/mrbgems/mruby-random/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-random/src/mt19937ar.c +224 -0
- data/resources/mruby/mrbgems/mruby-random/src/mt19937ar.h +80 -0
- data/resources/mruby/mrbgems/mruby-random/src/random.c +349 -0
- data/resources/mruby/mrbgems/mruby-random/src/random.h +12 -0
- data/resources/mruby/mrbgems/mruby-random/test/random.rb +88 -0
- data/resources/mruby/mrbgems/mruby-range-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-range-ext/mrblib/range.rb +31 -0
- data/resources/mruby/mrbgems/mruby-range-ext/src/range.c +176 -0
- data/resources/mruby/mrbgems/mruby-range-ext/test/range.rb +32 -0
- data/resources/mruby/mrbgems/mruby-socket/README.md +55 -0
- data/resources/mruby/mrbgems/mruby-socket/mrbgem.rake +17 -0
- data/resources/mruby/mrbgems/mruby-socket/mrblib/socket.rb +621 -0
- data/resources/mruby/mrbgems/mruby-socket/run_test.rb +28 -0
- data/resources/mruby/mrbgems/mruby-socket/src/const.cstub +453 -0
- data/resources/mruby/mrbgems/mruby-socket/src/const.def +163 -0
- data/resources/mruby/mrbgems/mruby-socket/src/gen.rb +17 -0
- data/resources/mruby/mrbgems/mruby-socket/src/socket.c +928 -0
- data/resources/mruby/mrbgems/mruby-socket/test/addrinfo.rb +91 -0
- data/resources/mruby/mrbgems/mruby-socket/test/basicsocket.rb +17 -0
- data/resources/mruby/mrbgems/mruby-socket/test/ipsocket.rb +44 -0
- data/resources/mruby/mrbgems/mruby-socket/test/socket.rb +38 -0
- data/resources/mruby/mrbgems/mruby-socket/test/sockettest.c +46 -0
- data/resources/mruby/mrbgems/mruby-socket/test/tcpsocket.rb +4 -0
- data/resources/mruby/mrbgems/mruby-socket/test/udpsocket.rb +16 -0
- data/resources/mruby/mrbgems/mruby-socket/test/unix.rb +130 -0
- data/resources/mruby/mrbgems/mruby-sprintf/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-sprintf/mrblib/string.rb +9 -0
- data/resources/mruby/mrbgems/mruby-sprintf/src/kernel.c +30 -0
- data/resources/mruby/mrbgems/mruby-sprintf/src/sprintf.c +1126 -0
- data/resources/mruby/mrbgems/mruby-sprintf/test/sprintf.rb +110 -0
- data/resources/mruby/mrbgems/mruby-string-ext/mrbgem.rake +6 -0
- data/resources/mruby/mrbgems/mruby-string-ext/mrblib/string.rb +368 -0
- data/resources/mruby/mrbgems/mruby-string-ext/src/string.c +804 -0
- data/resources/mruby/mrbgems/mruby-string-ext/test/string.rb +682 -0
- data/resources/mruby/mrbgems/mruby-struct/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-struct/mrblib/struct.rb +103 -0
- data/resources/mruby/mrbgems/mruby-struct/src/struct.c +726 -0
- data/resources/mruby/mrbgems/mruby-struct/test/struct.rb +205 -0
- data/resources/mruby/mrbgems/mruby-symbol-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-symbol-ext/mrblib/symbol.rb +78 -0
- data/resources/mruby/mrbgems/mruby-symbol-ext/src/symbol.c +64 -0
- data/resources/mruby/mrbgems/mruby-symbol-ext/test/symbol.rb +48 -0
- data/resources/mruby/mrbgems/mruby-test/README.md +7 -0
- data/resources/mruby/mrbgems/mruby-test/driver.c +175 -0
- data/resources/mruby/mrbgems/mruby-test/init_mrbtest.c +38 -0
- data/resources/mruby/mrbgems/mruby-test/mrbgem.rake +191 -0
- data/resources/mruby/mrbgems/mruby-time/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-time/mrblib/time.rb +9 -0
- data/resources/mruby/mrbgems/mruby-time/src/time.c +869 -0
- data/resources/mruby/mrbgems/mruby-time/test/time.rb +228 -0
- data/resources/mruby/mrbgems/mruby-toplevel-ext/mrbgem.rake +5 -0
- data/resources/mruby/mrbgems/mruby-toplevel-ext/mrblib/toplevel.rb +11 -0
- data/resources/mruby/mrbgems/mruby-toplevel-ext/test/toplevel.rb +24 -0
- data/resources/mruby/mrblib/00class.rb +29 -0
- data/resources/mruby/mrblib/10error.rb +59 -0
- data/resources/mruby/mrblib/array.rb +243 -0
- data/resources/mruby/mrblib/compar.rb +84 -0
- data/resources/mruby/mrblib/enum.rb +348 -0
- data/resources/mruby/mrblib/float.rb +9 -0
- data/resources/mruby/mrblib/hash.rb +358 -0
- data/resources/mruby/mrblib/init_mrblib.c +11 -0
- data/resources/mruby/mrblib/kernel.rb +50 -0
- data/resources/mruby/mrblib/mrblib.rake +21 -0
- data/resources/mruby/mrblib/numeric.rb +163 -0
- data/resources/mruby/mrblib/range.rb +67 -0
- data/resources/mruby/mrblib/string.rb +275 -0
- data/resources/mruby/mruby-source.gemspec +18 -0
- data/resources/mruby/src/array.c +1251 -0
- data/resources/mruby/src/backtrace.c +285 -0
- data/resources/mruby/src/class.c +2546 -0
- data/resources/mruby/src/codedump.c +477 -0
- data/resources/mruby/src/compar.c +13 -0
- data/resources/mruby/src/crc.c +39 -0
- data/resources/mruby/src/debug.c +217 -0
- data/resources/mruby/src/dump.c +1106 -0
- data/resources/mruby/src/enum.c +14 -0
- data/resources/mruby/src/error.c +513 -0
- data/resources/mruby/src/error.h +3 -0
- data/resources/mruby/src/etc.c +246 -0
- data/resources/mruby/src/fmt_fp.c +374 -0
- data/resources/mruby/src/gc.c +1835 -0
- data/resources/mruby/src/hash.c +916 -0
- data/resources/mruby/src/init.c +51 -0
- data/resources/mruby/src/kernel.c +1264 -0
- data/resources/mruby/src/load.c +706 -0
- data/resources/mruby/src/mruby_core.rake +20 -0
- data/resources/mruby/src/numeric.c +1574 -0
- data/resources/mruby/src/object.c +618 -0
- data/resources/mruby/src/opcode.h +2 -0
- data/resources/mruby/src/pool.c +209 -0
- data/resources/mruby/src/print.c +47 -0
- data/resources/mruby/src/proc.c +313 -0
- data/resources/mruby/src/range.c +446 -0
- data/resources/mruby/src/state.c +307 -0
- data/resources/mruby/src/string.c +3025 -0
- data/resources/mruby/src/symbol.c +494 -0
- data/resources/mruby/src/value_array.h +27 -0
- data/resources/mruby/src/variable.c +982 -0
- data/resources/mruby/src/version.c +17 -0
- data/resources/mruby/src/vm.c +3020 -0
- data/resources/mruby/tasks/benchmark.rake +91 -0
- data/resources/mruby/tasks/gitlab.rake +118 -0
- data/resources/mruby/tasks/libmruby.rake +24 -0
- data/resources/mruby/tasks/mrbgems.rake +98 -0
- data/resources/mruby/tasks/toolchains/android.rake +321 -0
- data/resources/mruby/tasks/toolchains/clang.rake +9 -0
- data/resources/mruby/tasks/toolchains/gcc.rake +66 -0
- data/resources/mruby/tasks/toolchains/openwrt.rake +38 -0
- data/resources/mruby/tasks/toolchains/visualcpp.rake +68 -0
- data/resources/mruby/test/assert.rb +249 -0
- data/resources/mruby/test/bintest.rb +33 -0
- data/resources/mruby/test/report.rb +4 -0
- data/resources/mruby/test/t/argumenterror.rb +16 -0
- data/resources/mruby/test/t/array.rb +394 -0
- data/resources/mruby/test/t/basicobject.rb +11 -0
- data/resources/mruby/test/t/bs_block.rb +521 -0
- data/resources/mruby/test/t/bs_literal.rb +38 -0
- data/resources/mruby/test/t/class.rb +451 -0
- data/resources/mruby/test/t/codegen.rb +197 -0
- data/resources/mruby/test/t/comparable.rb +80 -0
- data/resources/mruby/test/t/ensure.rb +54 -0
- data/resources/mruby/test/t/enumerable.rb +134 -0
- data/resources/mruby/test/t/exception.rb +422 -0
- data/resources/mruby/test/t/false.rb +31 -0
- data/resources/mruby/test/t/float.rb +209 -0
- data/resources/mruby/test/t/gc.rb +45 -0
- data/resources/mruby/test/t/hash.rb +375 -0
- data/resources/mruby/test/t/indexerror.rb +6 -0
- data/resources/mruby/test/t/integer.rb +277 -0
- data/resources/mruby/test/t/iterations.rb +61 -0
- data/resources/mruby/test/t/kernel.rb +600 -0
- data/resources/mruby/test/t/lang.rb +74 -0
- data/resources/mruby/test/t/literals.rb +337 -0
- data/resources/mruby/test/t/localjumperror.rb +13 -0
- data/resources/mruby/test/t/methods.rb +109 -0
- data/resources/mruby/test/t/module.rb +914 -0
- data/resources/mruby/test/t/nameerror.rb +28 -0
- data/resources/mruby/test/t/nil.rb +39 -0
- data/resources/mruby/test/t/nomethoderror.rb +22 -0
- data/resources/mruby/test/t/numeric.rb +43 -0
- data/resources/mruby/test/t/object.rb +11 -0
- data/resources/mruby/test/t/proc.rb +180 -0
- data/resources/mruby/test/t/range.rb +95 -0
- data/resources/mruby/test/t/rangeerror.rb +6 -0
- data/resources/mruby/test/t/regexperror.rb +4 -0
- data/resources/mruby/test/t/runtimeerror.rb +6 -0
- data/resources/mruby/test/t/standarderror.rb +6 -0
- data/resources/mruby/test/t/string.rb +728 -0
- data/resources/mruby/test/t/superclass.rb +47 -0
- data/resources/mruby/test/t/symbol.rb +30 -0
- data/resources/mruby/test/t/syntax.rb +468 -0
- data/resources/mruby/test/t/true.rb +31 -0
- data/resources/mruby/test/t/typeerror.rb +6 -0
- data/resources/mruby/test/t/unicode.rb +39 -0
- data/resources/mruby/travis_config.rb +53 -0
- metadata +806 -0
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
#! /usr/bin/env perl
|
|
2
|
+
|
|
3
|
+
# Program for testing regular expressions with perl to check that PCRE handles
|
|
4
|
+
# them the same. This version supports /8 for UTF-8 testing. However, it needs
|
|
5
|
+
# to have "use utf8" at the start for running the UTF-8 tests, but *not* for
|
|
6
|
+
# the other tests. The only way I've found for doing this is to cat this line
|
|
7
|
+
# in explicitly in the RunPerlTest script. I've also used this method to supply
|
|
8
|
+
# "require Encode" for the UTF-8 tests, so that the main test will still run
|
|
9
|
+
# where Encode is not installed.
|
|
10
|
+
|
|
11
|
+
# use locale; # With this included, \x0b matches \s!
|
|
12
|
+
|
|
13
|
+
# Function for turning a string into a string of printing chars.
|
|
14
|
+
|
|
15
|
+
#use utf8;
|
|
16
|
+
#require Encode;
|
|
17
|
+
|
|
18
|
+
sub pchars {
|
|
19
|
+
my($t) = "";
|
|
20
|
+
|
|
21
|
+
if ($utf8)
|
|
22
|
+
{
|
|
23
|
+
@p = unpack('U*', $_[0]);
|
|
24
|
+
foreach $c (@p)
|
|
25
|
+
{
|
|
26
|
+
if ($c >= 32 && $c < 127) { $t .= chr $c; }
|
|
27
|
+
else { $t .= sprintf("\\x{%02x}", $c);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
else
|
|
32
|
+
{
|
|
33
|
+
foreach $c (split(//, $_[0]))
|
|
34
|
+
{
|
|
35
|
+
if (ord $c >= 32 && ord $c < 127) { $t .= $c; }
|
|
36
|
+
else { $t .= sprintf("\\x%02x", ord $c); }
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
$t;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
# Read lines from named file or stdin and write to named file or stdout; lines
|
|
45
|
+
# consist of a regular expression, in delimiters and optionally followed by
|
|
46
|
+
# options, followed by a set of test data, terminated by an empty line.
|
|
47
|
+
|
|
48
|
+
# Sort out the input and output files
|
|
49
|
+
|
|
50
|
+
if (@ARGV > 0)
|
|
51
|
+
{
|
|
52
|
+
open(INFILE, "<$ARGV[0]") || die "Failed to open $ARGV[0]\n";
|
|
53
|
+
$infile = "INFILE";
|
|
54
|
+
}
|
|
55
|
+
else { $infile = "STDIN"; }
|
|
56
|
+
|
|
57
|
+
if (@ARGV > 1)
|
|
58
|
+
{
|
|
59
|
+
open(OUTFILE, ">$ARGV[1]") || die "Failed to open $ARGV[1]\n";
|
|
60
|
+
$outfile = "OUTFILE";
|
|
61
|
+
}
|
|
62
|
+
else { $outfile = "STDOUT"; }
|
|
63
|
+
|
|
64
|
+
printf($outfile "Perl $] Regular Expressions\n\n");
|
|
65
|
+
|
|
66
|
+
# Main loop
|
|
67
|
+
|
|
68
|
+
NEXT_RE:
|
|
69
|
+
for (;;)
|
|
70
|
+
{
|
|
71
|
+
printf " re> " if $infile eq "STDIN";
|
|
72
|
+
last if ! ($_ = <$infile>);
|
|
73
|
+
printf $outfile "$_" if $infile ne "STDIN";
|
|
74
|
+
next if ($_ eq "");
|
|
75
|
+
|
|
76
|
+
$pattern = $_;
|
|
77
|
+
|
|
78
|
+
while ($pattern !~ /^\s*(.).*\1/s)
|
|
79
|
+
{
|
|
80
|
+
printf " > " if $infile eq "STDIN";
|
|
81
|
+
last if ! ($_ = <$infile>);
|
|
82
|
+
printf $outfile "$_" if $infile ne "STDIN";
|
|
83
|
+
$pattern .= $_;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
chomp($pattern);
|
|
87
|
+
$pattern =~ s/\s+$//;
|
|
88
|
+
|
|
89
|
+
# The private /+ modifier means "print $' afterwards".
|
|
90
|
+
|
|
91
|
+
$showrest = ($pattern =~ s/\+(?=[a-zA-Z]*$)//);
|
|
92
|
+
|
|
93
|
+
# A doubled version is used by pcretest to print remainders after captures
|
|
94
|
+
|
|
95
|
+
$pattern =~ s/\+(?=[a-zA-Z]*$)//;
|
|
96
|
+
|
|
97
|
+
# Remove /8 from a UTF-8 pattern.
|
|
98
|
+
|
|
99
|
+
$utf8 = $pattern =~ s/8(?=[a-zA-Z]*$)//;
|
|
100
|
+
|
|
101
|
+
# Remove /J from a pattern with duplicate names.
|
|
102
|
+
|
|
103
|
+
$pattern =~ s/J(?=[a-zA-Z]*$)//;
|
|
104
|
+
|
|
105
|
+
# Remove /K from a pattern (asks pcretest to check MARK data) */
|
|
106
|
+
|
|
107
|
+
$pattern =~ s/K(?=[a-zA-Z]*$)//;
|
|
108
|
+
|
|
109
|
+
# Remove /W from a pattern (asks pcretest to set PCRE_UCP)
|
|
110
|
+
|
|
111
|
+
$pattern =~ s/W(?=[a-zA-Z]*$)//;
|
|
112
|
+
|
|
113
|
+
# Remove /S or /SS from a pattern (asks pcretest to study or not to study)
|
|
114
|
+
|
|
115
|
+
$pattern =~ s/S(?=[a-zA-Z]*$)//g;
|
|
116
|
+
|
|
117
|
+
# Remove /Y from a pattern (asks pcretest to disable PCRE optimization)
|
|
118
|
+
|
|
119
|
+
$pattern =~ s/Y(?=[a-zA-Z]*$)//;
|
|
120
|
+
|
|
121
|
+
# Check that the pattern is valid
|
|
122
|
+
|
|
123
|
+
eval "\$_ =~ ${pattern}";
|
|
124
|
+
if ($@)
|
|
125
|
+
{
|
|
126
|
+
printf $outfile "Error: $@";
|
|
127
|
+
next NEXT_RE;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
# If the /g modifier is present, we want to put a loop round the matching;
|
|
131
|
+
# otherwise just a single "if".
|
|
132
|
+
|
|
133
|
+
$cmd = ($pattern =~ /g[a-z]*$/)? "while" : "if";
|
|
134
|
+
|
|
135
|
+
# If the pattern is actually the null string, Perl uses the most recently
|
|
136
|
+
# executed (and successfully compiled) regex is used instead. This is a
|
|
137
|
+
# nasty trap for the unwary! The PCRE test suite does contain null strings
|
|
138
|
+
# in places - if they are allowed through here all sorts of weird and
|
|
139
|
+
# unexpected effects happen. To avoid this, we replace such patterns with
|
|
140
|
+
# a non-null pattern that has the same effect.
|
|
141
|
+
|
|
142
|
+
$pattern = "/(?#)/$2" if ($pattern =~ /^(.)\1(.*)$/);
|
|
143
|
+
|
|
144
|
+
# Read data lines and test them
|
|
145
|
+
|
|
146
|
+
for (;;)
|
|
147
|
+
{
|
|
148
|
+
printf "data> " if $infile eq "STDIN";
|
|
149
|
+
last NEXT_RE if ! ($_ = <$infile>);
|
|
150
|
+
chomp;
|
|
151
|
+
printf $outfile "$_\n" if $infile ne "STDIN";
|
|
152
|
+
|
|
153
|
+
s/\s+$//; # Remove trailing space
|
|
154
|
+
s/^\s+//; # Remove leading space
|
|
155
|
+
s/\\Y//g; # Remove \Y (pcretest flag to set PCRE_NO_START_OPTIMIZE)
|
|
156
|
+
|
|
157
|
+
last if ($_ eq "");
|
|
158
|
+
$x = eval "\"$_\""; # To get escapes processed
|
|
159
|
+
|
|
160
|
+
# Empty array for holding results, ensure $REGERROR and $REGMARK are
|
|
161
|
+
# unset, then do the matching.
|
|
162
|
+
|
|
163
|
+
@subs = ();
|
|
164
|
+
|
|
165
|
+
$pushes = "push \@subs,\$&;" .
|
|
166
|
+
"push \@subs,\$1;" .
|
|
167
|
+
"push \@subs,\$2;" .
|
|
168
|
+
"push \@subs,\$3;" .
|
|
169
|
+
"push \@subs,\$4;" .
|
|
170
|
+
"push \@subs,\$5;" .
|
|
171
|
+
"push \@subs,\$6;" .
|
|
172
|
+
"push \@subs,\$7;" .
|
|
173
|
+
"push \@subs,\$8;" .
|
|
174
|
+
"push \@subs,\$9;" .
|
|
175
|
+
"push \@subs,\$10;" .
|
|
176
|
+
"push \@subs,\$11;" .
|
|
177
|
+
"push \@subs,\$12;" .
|
|
178
|
+
"push \@subs,\$13;" .
|
|
179
|
+
"push \@subs,\$14;" .
|
|
180
|
+
"push \@subs,\$15;" .
|
|
181
|
+
"push \@subs,\$16;" .
|
|
182
|
+
"push \@subs,\$'; }";
|
|
183
|
+
|
|
184
|
+
undef $REGERROR;
|
|
185
|
+
undef $REGMARK;
|
|
186
|
+
|
|
187
|
+
eval "${cmd} (\$x =~ ${pattern}) {" . $pushes;
|
|
188
|
+
|
|
189
|
+
if ($@)
|
|
190
|
+
{
|
|
191
|
+
printf $outfile "Error: $@\n";
|
|
192
|
+
next NEXT_RE;
|
|
193
|
+
}
|
|
194
|
+
elsif (scalar(@subs) == 0)
|
|
195
|
+
{
|
|
196
|
+
printf $outfile "No match";
|
|
197
|
+
if (defined $REGERROR && $REGERROR != 1)
|
|
198
|
+
{ printf $outfile (", mark = %s", &pchars($REGERROR)); }
|
|
199
|
+
printf $outfile "\n";
|
|
200
|
+
}
|
|
201
|
+
else
|
|
202
|
+
{
|
|
203
|
+
while (scalar(@subs) != 0)
|
|
204
|
+
{
|
|
205
|
+
printf $outfile (" 0: %s\n", &pchars($subs[0]));
|
|
206
|
+
printf $outfile (" 0+ %s\n", &pchars($subs[17])) if $showrest;
|
|
207
|
+
$last_printed = 0;
|
|
208
|
+
for ($i = 1; $i <= 16; $i++)
|
|
209
|
+
{
|
|
210
|
+
if (defined $subs[$i])
|
|
211
|
+
{
|
|
212
|
+
while ($last_printed++ < $i-1)
|
|
213
|
+
{ printf $outfile ("%2d: <unset>\n", $last_printed); }
|
|
214
|
+
printf $outfile ("%2d: %s\n", $i, &pchars($subs[$i]));
|
|
215
|
+
$last_printed = $i;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
splice(@subs, 0, 18);
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
# It seems that $REGMARK is not marked as UTF-8 even when use utf8 is
|
|
222
|
+
# set and the input pattern was a UTF-8 string. We can, however, force
|
|
223
|
+
# it to be so marked.
|
|
224
|
+
|
|
225
|
+
if (defined $REGMARK && $REGMARK != 1)
|
|
226
|
+
{
|
|
227
|
+
$xx = $REGMARK;
|
|
228
|
+
$xx = Encode::decode_utf8($xx) if $utf8;
|
|
229
|
+
printf $outfile ("MK: %s\n", &pchars($xx));
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
# printf $outfile "\n";
|
|
236
|
+
|
|
237
|
+
# End
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Stack-less Just-In-Time compiler
|
|
3
|
+
*
|
|
4
|
+
* Copyright 2009-2012 Zoltan Herczeg (hzmester@freemail.hu). All rights reserved.
|
|
5
|
+
*
|
|
6
|
+
* Redistribution and use in source and binary forms, with or without modification, are
|
|
7
|
+
* permitted provided that the following conditions are met:
|
|
8
|
+
*
|
|
9
|
+
* 1. Redistributions of source code must retain the above copyright notice, this list of
|
|
10
|
+
* conditions and the following disclaimer.
|
|
11
|
+
*
|
|
12
|
+
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
|
13
|
+
* of conditions and the following disclaimer in the documentation and/or other materials
|
|
14
|
+
* provided with the distribution.
|
|
15
|
+
*
|
|
16
|
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND CONTRIBUTORS ``AS IS'' AND ANY
|
|
17
|
+
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
18
|
+
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
|
19
|
+
* SHALL THE COPYRIGHT HOLDER(S) OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
20
|
+
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
|
21
|
+
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
|
22
|
+
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
23
|
+
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
24
|
+
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
#ifndef _SLJIT_CONFIG_H_
|
|
28
|
+
#define _SLJIT_CONFIG_H_
|
|
29
|
+
|
|
30
|
+
/* --------------------------------------------------------------------- */
|
|
31
|
+
/* Custom defines */
|
|
32
|
+
/* --------------------------------------------------------------------- */
|
|
33
|
+
|
|
34
|
+
/* Put your custom defines here. This empty section will never change
|
|
35
|
+
which helps maintaining patches (with diff / patch utilities). */
|
|
36
|
+
|
|
37
|
+
/* --------------------------------------------------------------------- */
|
|
38
|
+
/* Architecture */
|
|
39
|
+
/* --------------------------------------------------------------------- */
|
|
40
|
+
|
|
41
|
+
/* Architecture selection. */
|
|
42
|
+
/* #define SLJIT_CONFIG_X86_32 1 */
|
|
43
|
+
/* #define SLJIT_CONFIG_X86_64 1 */
|
|
44
|
+
/* #define SLJIT_CONFIG_ARM_V5 1 */
|
|
45
|
+
/* #define SLJIT_CONFIG_ARM_V7 1 */
|
|
46
|
+
/* #define SLJIT_CONFIG_ARM_THUMB2 1 */
|
|
47
|
+
/* #define SLJIT_CONFIG_PPC_32 1 */
|
|
48
|
+
/* #define SLJIT_CONFIG_PPC_64 1 */
|
|
49
|
+
/* #define SLJIT_CONFIG_MIPS_32 1 */
|
|
50
|
+
/* #define SLJIT_CONFIG_SPARC_32 1 */
|
|
51
|
+
|
|
52
|
+
/* #define SLJIT_CONFIG_AUTO 1 */
|
|
53
|
+
/* #define SLJIT_CONFIG_UNSUPPORTED 1 */
|
|
54
|
+
|
|
55
|
+
/* --------------------------------------------------------------------- */
|
|
56
|
+
/* Utilities */
|
|
57
|
+
/* --------------------------------------------------------------------- */
|
|
58
|
+
|
|
59
|
+
/* Useful for thread-safe compiling of global functions. */
|
|
60
|
+
#ifndef SLJIT_UTIL_GLOBAL_LOCK
|
|
61
|
+
/* Enabled by default */
|
|
62
|
+
#define SLJIT_UTIL_GLOBAL_LOCK 1
|
|
63
|
+
#endif
|
|
64
|
+
|
|
65
|
+
/* Implements a stack like data structure (by using mmap / VirtualAlloc). */
|
|
66
|
+
#ifndef SLJIT_UTIL_STACK
|
|
67
|
+
/* Enabled by default */
|
|
68
|
+
#define SLJIT_UTIL_STACK 1
|
|
69
|
+
#endif
|
|
70
|
+
|
|
71
|
+
/* Single threaded application. Does not require any locks. */
|
|
72
|
+
#ifndef SLJIT_SINGLE_THREADED
|
|
73
|
+
/* Disabled by default. */
|
|
74
|
+
#define SLJIT_SINGLE_THREADED 0
|
|
75
|
+
#endif
|
|
76
|
+
|
|
77
|
+
/* --------------------------------------------------------------------- */
|
|
78
|
+
/* Configuration */
|
|
79
|
+
/* --------------------------------------------------------------------- */
|
|
80
|
+
|
|
81
|
+
/* If SLJIT_STD_MACROS_DEFINED is not defined, the application should
|
|
82
|
+
define SLJIT_MALLOC, SLJIT_FREE, SLJIT_MEMMOVE, and NULL. */
|
|
83
|
+
#ifndef SLJIT_STD_MACROS_DEFINED
|
|
84
|
+
/* Disabled by default. */
|
|
85
|
+
#define SLJIT_STD_MACROS_DEFINED 0
|
|
86
|
+
#endif
|
|
87
|
+
|
|
88
|
+
/* Executable code allocation:
|
|
89
|
+
If SLJIT_EXECUTABLE_ALLOCATOR is not defined, the application should
|
|
90
|
+
define both SLJIT_MALLOC_EXEC and SLJIT_FREE_EXEC. */
|
|
91
|
+
#ifndef SLJIT_EXECUTABLE_ALLOCATOR
|
|
92
|
+
/* Enabled by default. */
|
|
93
|
+
#define SLJIT_EXECUTABLE_ALLOCATOR 1
|
|
94
|
+
#endif
|
|
95
|
+
|
|
96
|
+
/* Debug checks (assertions, etc.). */
|
|
97
|
+
#ifndef SLJIT_DEBUG
|
|
98
|
+
/* Enabled by default */
|
|
99
|
+
#define SLJIT_DEBUG 1
|
|
100
|
+
#endif
|
|
101
|
+
|
|
102
|
+
/* Verbose operations */
|
|
103
|
+
#ifndef SLJIT_VERBOSE
|
|
104
|
+
/* Enabled by default */
|
|
105
|
+
#define SLJIT_VERBOSE 1
|
|
106
|
+
#endif
|
|
107
|
+
|
|
108
|
+
/* See the beginning of sljitConfigInternal.h */
|
|
109
|
+
|
|
110
|
+
#endif
|
|
@@ -0,0 +1,484 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Stack-less Just-In-Time compiler
|
|
3
|
+
*
|
|
4
|
+
* Copyright 2009-2012 Zoltan Herczeg (hzmester@freemail.hu). All rights reserved.
|
|
5
|
+
*
|
|
6
|
+
* Redistribution and use in source and binary forms, with or without modification, are
|
|
7
|
+
* permitted provided that the following conditions are met:
|
|
8
|
+
*
|
|
9
|
+
* 1. Redistributions of source code must retain the above copyright notice, this list of
|
|
10
|
+
* conditions and the following disclaimer.
|
|
11
|
+
*
|
|
12
|
+
* 2. Redistributions in binary form must reproduce the above copyright notice, this list
|
|
13
|
+
* of conditions and the following disclaimer in the documentation and/or other materials
|
|
14
|
+
* provided with the distribution.
|
|
15
|
+
*
|
|
16
|
+
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND CONTRIBUTORS ``AS IS'' AND ANY
|
|
17
|
+
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
18
|
+
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
|
|
19
|
+
* SHALL THE COPYRIGHT HOLDER(S) OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
20
|
+
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
|
|
21
|
+
* TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
|
22
|
+
* BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
23
|
+
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
24
|
+
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
25
|
+
*/
|
|
26
|
+
|
|
27
|
+
#ifndef _SLJIT_CONFIG_INTERNAL_H_
|
|
28
|
+
#define _SLJIT_CONFIG_INTERNAL_H_
|
|
29
|
+
|
|
30
|
+
/*
|
|
31
|
+
SLJIT defines the following macros depending on the target architecture:
|
|
32
|
+
|
|
33
|
+
Feature detection (boolean) macros:
|
|
34
|
+
SLJIT_32BIT_ARCHITECTURE : 32 bit architecture
|
|
35
|
+
SLJIT_64BIT_ARCHITECTURE : 64 bit architecture
|
|
36
|
+
SLJIT_WORD_SHIFT : the shift required to apply when accessing a sljit_sw/sljit_uw array by index
|
|
37
|
+
SLJIT_DOUBLE_SHIFT : the shift required to apply when accessing a double array by index
|
|
38
|
+
SLJIT_LITTLE_ENDIAN : little endian architecture
|
|
39
|
+
SLJIT_BIG_ENDIAN : big endian architecture
|
|
40
|
+
SLJIT_UNALIGNED : allows unaligned memory accesses for non-fpu operations (only!)
|
|
41
|
+
SLJIT_INDIRECT_CALL : see SLJIT_FUNC_OFFSET() for more information
|
|
42
|
+
SLJIT_RETURN_ADDRESS_OFFSET : a return instruction always adds this offset to the return address
|
|
43
|
+
|
|
44
|
+
Types and useful macros:
|
|
45
|
+
sljit_sb, sljit_ub : signed and unsigned 8 bit byte
|
|
46
|
+
sljit_sh, sljit_uh : signed and unsigned 16 bit half-word (short) type
|
|
47
|
+
sljit_si, sljit_ui : signed and unsigned 32 bit integer type
|
|
48
|
+
sljit_sw, sljit_uw : signed and unsigned machine word, enough to store a pointer
|
|
49
|
+
sljit_p : unsgined pointer value (usually the same as sljit_uw, but
|
|
50
|
+
some 64 bit ABIs may use 32 bit pointers)
|
|
51
|
+
sljit_s : single precision floating point value
|
|
52
|
+
sljit_d : double precision floating point value
|
|
53
|
+
SLJIT_CALL : C calling convention define for both calling JIT form C and C callbacks for JIT
|
|
54
|
+
SLJIT_W(number) : defining 64 bit constants on 64 bit architectures (compiler independent helper)
|
|
55
|
+
*/
|
|
56
|
+
|
|
57
|
+
#if !((defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) \
|
|
58
|
+
|| (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) \
|
|
59
|
+
|| (defined SLJIT_CONFIG_ARM_V5 && SLJIT_CONFIG_ARM_V5) \
|
|
60
|
+
|| (defined SLJIT_CONFIG_ARM_V7 && SLJIT_CONFIG_ARM_V7) \
|
|
61
|
+
|| (defined SLJIT_CONFIG_ARM_THUMB2 && SLJIT_CONFIG_ARM_THUMB2) \
|
|
62
|
+
|| (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) \
|
|
63
|
+
|| (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) \
|
|
64
|
+
|| (defined SLJIT_CONFIG_MIPS_32 && SLJIT_CONFIG_MIPS_32) \
|
|
65
|
+
|| (defined SLJIT_CONFIG_SPARC_32 && SLJIT_CONFIG_SPARC_32) \
|
|
66
|
+
|| (defined SLJIT_CONFIG_AUTO && SLJIT_CONFIG_AUTO) \
|
|
67
|
+
|| (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED))
|
|
68
|
+
#error "An architecture must be selected"
|
|
69
|
+
#endif
|
|
70
|
+
|
|
71
|
+
/* Sanity check. */
|
|
72
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) \
|
|
73
|
+
+ (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) \
|
|
74
|
+
+ (defined SLJIT_CONFIG_ARM_V5 && SLJIT_CONFIG_ARM_V5) \
|
|
75
|
+
+ (defined SLJIT_CONFIG_ARM_V7 && SLJIT_CONFIG_ARM_V7) \
|
|
76
|
+
+ (defined SLJIT_CONFIG_ARM_THUMB2 && SLJIT_CONFIG_ARM_THUMB2) \
|
|
77
|
+
+ (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) \
|
|
78
|
+
+ (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) \
|
|
79
|
+
+ (defined SLJIT_CONFIG_MIPS_32 && SLJIT_CONFIG_MIPS_32) \
|
|
80
|
+
+ (defined SLJIT_CONFIG_SPARC_32 && SLJIT_CONFIG_SPARC_32) \
|
|
81
|
+
+ (defined SLJIT_CONFIG_AUTO && SLJIT_CONFIG_AUTO) \
|
|
82
|
+
+ (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED) >= 2
|
|
83
|
+
#error "Multiple architectures are selected"
|
|
84
|
+
#endif
|
|
85
|
+
|
|
86
|
+
/* Auto select option (requires compiler support) */
|
|
87
|
+
#if (defined SLJIT_CONFIG_AUTO && SLJIT_CONFIG_AUTO)
|
|
88
|
+
|
|
89
|
+
#ifndef _WIN32
|
|
90
|
+
|
|
91
|
+
#if defined(__i386__) || defined(__i386)
|
|
92
|
+
#define SLJIT_CONFIG_X86_32 1
|
|
93
|
+
#elif defined(__x86_64__)
|
|
94
|
+
#define SLJIT_CONFIG_X86_64 1
|
|
95
|
+
#elif defined(__arm__) || defined(__ARM__)
|
|
96
|
+
#ifdef __thumb2__
|
|
97
|
+
#define SLJIT_CONFIG_ARM_THUMB2 1
|
|
98
|
+
#elif defined(__ARM_ARCH_7__) || defined(__ARM_ARCH_7A__) || defined(__ARM_ARCH_7R__)
|
|
99
|
+
#define SLJIT_CONFIG_ARM_V7 1
|
|
100
|
+
#else
|
|
101
|
+
#define SLJIT_CONFIG_ARM_V5 1
|
|
102
|
+
#endif
|
|
103
|
+
#elif defined(__ppc64__) || defined(__powerpc64__) || defined(_ARCH_PPC64) || (defined(_POWER) && defined(__64BIT__))
|
|
104
|
+
#define SLJIT_CONFIG_PPC_64 1
|
|
105
|
+
#elif defined(__ppc__) || defined(__powerpc__) || defined(_ARCH_PPC) || defined(_ARCH_PWR) || defined(_ARCH_PWR2) || defined(_POWER)
|
|
106
|
+
#define SLJIT_CONFIG_PPC_32 1
|
|
107
|
+
#elif defined(__mips__)
|
|
108
|
+
#define SLJIT_CONFIG_MIPS_32 1
|
|
109
|
+
#elif defined(__sparc__) || defined(__sparc)
|
|
110
|
+
#define SLJIT_CONFIG_SPARC_32 1
|
|
111
|
+
#else
|
|
112
|
+
/* Unsupported architecture */
|
|
113
|
+
#define SLJIT_CONFIG_UNSUPPORTED 1
|
|
114
|
+
#endif
|
|
115
|
+
|
|
116
|
+
#else /* !_WIN32 */
|
|
117
|
+
|
|
118
|
+
#if defined(_M_X64) || defined(__x86_64__)
|
|
119
|
+
#define SLJIT_CONFIG_X86_64 1
|
|
120
|
+
#elif defined(_ARM_)
|
|
121
|
+
#define SLJIT_CONFIG_ARM_V5 1
|
|
122
|
+
#else
|
|
123
|
+
#define SLJIT_CONFIG_X86_32 1
|
|
124
|
+
#endif
|
|
125
|
+
|
|
126
|
+
#endif /* !WIN32 */
|
|
127
|
+
#endif /* SLJIT_CONFIG_AUTO */
|
|
128
|
+
|
|
129
|
+
#if (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED)
|
|
130
|
+
#undef SLJIT_EXECUTABLE_ALLOCATOR
|
|
131
|
+
#endif
|
|
132
|
+
|
|
133
|
+
#if !(defined SLJIT_STD_MACROS_DEFINED && SLJIT_STD_MACROS_DEFINED)
|
|
134
|
+
|
|
135
|
+
/* These libraries are needed for the macros below. */
|
|
136
|
+
#include <stdlib.h>
|
|
137
|
+
#include <string.h>
|
|
138
|
+
|
|
139
|
+
#endif /* STD_MACROS_DEFINED */
|
|
140
|
+
|
|
141
|
+
/* General macros:
|
|
142
|
+
Note: SLJIT is designed to be independent from them as possible.
|
|
143
|
+
|
|
144
|
+
In release mode (SLJIT_DEBUG is not defined) only the following macros are needed:
|
|
145
|
+
*/
|
|
146
|
+
|
|
147
|
+
#ifndef SLJIT_MALLOC
|
|
148
|
+
#define SLJIT_MALLOC(size) malloc(size)
|
|
149
|
+
#endif
|
|
150
|
+
|
|
151
|
+
#ifndef SLJIT_FREE
|
|
152
|
+
#define SLJIT_FREE(ptr) free(ptr)
|
|
153
|
+
#endif
|
|
154
|
+
|
|
155
|
+
#ifndef SLJIT_MEMMOVE
|
|
156
|
+
#define SLJIT_MEMMOVE(dest, src, len) memmove(dest, src, len)
|
|
157
|
+
#endif
|
|
158
|
+
|
|
159
|
+
#ifndef SLJIT_ZEROMEM
|
|
160
|
+
#define SLJIT_ZEROMEM(dest, len) memset(dest, 0, len)
|
|
161
|
+
#endif
|
|
162
|
+
|
|
163
|
+
#if !defined(SLJIT_LIKELY) && !defined(SLJIT_UNLIKELY)
|
|
164
|
+
|
|
165
|
+
#if defined(__GNUC__) && (__GNUC__ >= 3)
|
|
166
|
+
#define SLJIT_LIKELY(x) __builtin_expect((x), 1)
|
|
167
|
+
#define SLJIT_UNLIKELY(x) __builtin_expect((x), 0)
|
|
168
|
+
#else
|
|
169
|
+
#define SLJIT_LIKELY(x) (x)
|
|
170
|
+
#define SLJIT_UNLIKELY(x) (x)
|
|
171
|
+
#endif
|
|
172
|
+
|
|
173
|
+
#endif /* !defined(SLJIT_LIKELY) && !defined(SLJIT_UNLIKELY) */
|
|
174
|
+
|
|
175
|
+
#ifndef SLJIT_INLINE
|
|
176
|
+
/* Inline functions. */
|
|
177
|
+
#define SLJIT_INLINE __inline
|
|
178
|
+
#endif
|
|
179
|
+
|
|
180
|
+
#ifndef SLJIT_CONST
|
|
181
|
+
/* Const variables. */
|
|
182
|
+
#define SLJIT_CONST const
|
|
183
|
+
#endif
|
|
184
|
+
|
|
185
|
+
#ifndef SLJIT_UNUSED_ARG
|
|
186
|
+
/* Unused arguments. */
|
|
187
|
+
#define SLJIT_UNUSED_ARG(arg) (void)arg
|
|
188
|
+
#endif
|
|
189
|
+
|
|
190
|
+
#if (defined SLJIT_CONFIG_STATIC && SLJIT_CONFIG_STATIC)
|
|
191
|
+
/* Static ABI functions. For all-in-one programs. */
|
|
192
|
+
|
|
193
|
+
#if defined(__GNUC__)
|
|
194
|
+
/* Disable unused warnings in gcc. */
|
|
195
|
+
#define SLJIT_API_FUNC_ATTRIBUTE static __attribute__((unused))
|
|
196
|
+
#else
|
|
197
|
+
#define SLJIT_API_FUNC_ATTRIBUTE static
|
|
198
|
+
#endif
|
|
199
|
+
|
|
200
|
+
#else
|
|
201
|
+
#define SLJIT_API_FUNC_ATTRIBUTE
|
|
202
|
+
#endif /* (defined SLJIT_CONFIG_STATIC && SLJIT_CONFIG_STATIC) */
|
|
203
|
+
|
|
204
|
+
#ifndef SLJIT_CACHE_FLUSH
|
|
205
|
+
|
|
206
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) || (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64)
|
|
207
|
+
|
|
208
|
+
/* Not required to implement on archs with unified caches. */
|
|
209
|
+
#define SLJIT_CACHE_FLUSH(from, to)
|
|
210
|
+
|
|
211
|
+
#elif defined __APPLE__
|
|
212
|
+
|
|
213
|
+
/* Supported by all macs since Mac OS 10.5.
|
|
214
|
+
However, it does not work on non-jailbroken iOS devices,
|
|
215
|
+
although the compilation is successful. */
|
|
216
|
+
|
|
217
|
+
#define SLJIT_CACHE_FLUSH(from, to) \
|
|
218
|
+
sys_icache_invalidate((char*)(from), (char*)(to) - (char*)(from))
|
|
219
|
+
|
|
220
|
+
#elif (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) || (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64)
|
|
221
|
+
|
|
222
|
+
/* The __clear_cache() implementation of GCC is a dummy function on PowerPC. */
|
|
223
|
+
#define SLJIT_CACHE_FLUSH(from, to) \
|
|
224
|
+
ppc_cache_flush((from), (to))
|
|
225
|
+
|
|
226
|
+
#elif (defined SLJIT_CONFIG_SPARC_32 && SLJIT_CONFIG_SPARC_32)
|
|
227
|
+
|
|
228
|
+
/* The __clear_cache() implementation of GCC is a dummy function on Sparc. */
|
|
229
|
+
#define SLJIT_CACHE_FLUSH(from, to) \
|
|
230
|
+
sparc_cache_flush((from), (to))
|
|
231
|
+
|
|
232
|
+
#else
|
|
233
|
+
|
|
234
|
+
/* Calls __ARM_NR_cacheflush on ARM-Linux. */
|
|
235
|
+
#define SLJIT_CACHE_FLUSH(from, to) \
|
|
236
|
+
__clear_cache((char*)(from), (char*)(to))
|
|
237
|
+
|
|
238
|
+
#endif
|
|
239
|
+
|
|
240
|
+
#endif /* !SLJIT_CACHE_FLUSH */
|
|
241
|
+
|
|
242
|
+
/* 8 bit byte type. */
|
|
243
|
+
typedef unsigned char sljit_ub;
|
|
244
|
+
typedef signed char sljit_sb;
|
|
245
|
+
|
|
246
|
+
/* 16 bit half-word type. */
|
|
247
|
+
typedef unsigned short int sljit_uh;
|
|
248
|
+
typedef signed short int sljit_sh;
|
|
249
|
+
|
|
250
|
+
/* 32 bit integer type. */
|
|
251
|
+
typedef unsigned int sljit_ui;
|
|
252
|
+
typedef signed int sljit_si;
|
|
253
|
+
|
|
254
|
+
/* Machine word type. Can encapsulate a pointer.
|
|
255
|
+
32 bit for 32 bit machines.
|
|
256
|
+
64 bit for 64 bit machines. */
|
|
257
|
+
#if (defined SLJIT_CONFIG_UNSUPPORTED && SLJIT_CONFIG_UNSUPPORTED)
|
|
258
|
+
/* Just to have something. */
|
|
259
|
+
#define SLJIT_WORD_SHIFT 0
|
|
260
|
+
typedef unsigned long int sljit_uw;
|
|
261
|
+
typedef long int sljit_sw;
|
|
262
|
+
#elif !(defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) && !(defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64)
|
|
263
|
+
#define SLJIT_32BIT_ARCHITECTURE 1
|
|
264
|
+
#define SLJIT_WORD_SHIFT 2
|
|
265
|
+
typedef unsigned int sljit_uw;
|
|
266
|
+
typedef int sljit_sw;
|
|
267
|
+
#else
|
|
268
|
+
#define SLJIT_64BIT_ARCHITECTURE 1
|
|
269
|
+
#define SLJIT_WORD_SHIFT 3
|
|
270
|
+
#ifdef _WIN32
|
|
271
|
+
typedef unsigned __int64 sljit_uw;
|
|
272
|
+
typedef __int64 sljit_sw;
|
|
273
|
+
#else
|
|
274
|
+
typedef unsigned long int sljit_uw;
|
|
275
|
+
typedef long int sljit_sw;
|
|
276
|
+
#endif
|
|
277
|
+
#endif
|
|
278
|
+
|
|
279
|
+
typedef sljit_uw sljit_p;
|
|
280
|
+
|
|
281
|
+
/* Floating point types. */
|
|
282
|
+
typedef float sljit_s;
|
|
283
|
+
typedef double sljit_d;
|
|
284
|
+
|
|
285
|
+
/* Shift for pointer sized data. */
|
|
286
|
+
#define SLJIT_POINTER_SHIFT SLJIT_WORD_SHIFT
|
|
287
|
+
|
|
288
|
+
/* Shift for double precision sized data. */
|
|
289
|
+
#define SLJIT_DOUBLE_SHIFT 3
|
|
290
|
+
|
|
291
|
+
#ifndef SLJIT_W
|
|
292
|
+
|
|
293
|
+
/* Defining long constants. */
|
|
294
|
+
#if (defined SLJIT_64BIT_ARCHITECTURE && SLJIT_64BIT_ARCHITECTURE)
|
|
295
|
+
#define SLJIT_W(w) (w##ll)
|
|
296
|
+
#else
|
|
297
|
+
#define SLJIT_W(w) (w)
|
|
298
|
+
#endif
|
|
299
|
+
|
|
300
|
+
#endif /* !SLJIT_W */
|
|
301
|
+
|
|
302
|
+
#ifndef SLJIT_CALL
|
|
303
|
+
|
|
304
|
+
/* ABI (Application Binary Interface) types. */
|
|
305
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32)
|
|
306
|
+
|
|
307
|
+
#if defined(__GNUC__)
|
|
308
|
+
|
|
309
|
+
#define SLJIT_CALL __attribute__ ((fastcall))
|
|
310
|
+
#define SLJIT_X86_32_FASTCALL 1
|
|
311
|
+
|
|
312
|
+
#elif defined(_MSC_VER)
|
|
313
|
+
|
|
314
|
+
#define SLJIT_CALL __fastcall
|
|
315
|
+
#define SLJIT_X86_32_FASTCALL 1
|
|
316
|
+
|
|
317
|
+
#elif defined(__BORLANDC__)
|
|
318
|
+
|
|
319
|
+
#define SLJIT_CALL __msfastcall
|
|
320
|
+
#define SLJIT_X86_32_FASTCALL 1
|
|
321
|
+
|
|
322
|
+
#else /* Unknown compiler. */
|
|
323
|
+
|
|
324
|
+
/* The cdecl attribute is the default. */
|
|
325
|
+
#define SLJIT_CALL
|
|
326
|
+
|
|
327
|
+
#endif
|
|
328
|
+
|
|
329
|
+
#else /* Non x86-32 architectures. */
|
|
330
|
+
|
|
331
|
+
#define SLJIT_CALL
|
|
332
|
+
|
|
333
|
+
#endif /* SLJIT_CONFIG_X86_32 */
|
|
334
|
+
|
|
335
|
+
#endif /* !SLJIT_CALL */
|
|
336
|
+
|
|
337
|
+
#if !defined(SLJIT_BIG_ENDIAN) && !defined(SLJIT_LITTLE_ENDIAN)
|
|
338
|
+
|
|
339
|
+
/* These macros are useful for the application. */
|
|
340
|
+
#if (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) \
|
|
341
|
+
|| (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) \
|
|
342
|
+
|| (defined SLJIT_CONFIG_SPARC_32 && SLJIT_CONFIG_SPARC_32)
|
|
343
|
+
#define SLJIT_BIG_ENDIAN 1
|
|
344
|
+
|
|
345
|
+
#elif (defined SLJIT_CONFIG_MIPS_32 && SLJIT_CONFIG_MIPS_32)
|
|
346
|
+
|
|
347
|
+
#ifdef __MIPSEL__
|
|
348
|
+
#define SLJIT_LITTLE_ENDIAN 1
|
|
349
|
+
#else
|
|
350
|
+
#define SLJIT_BIG_ENDIAN 1
|
|
351
|
+
#endif
|
|
352
|
+
|
|
353
|
+
#else
|
|
354
|
+
#define SLJIT_LITTLE_ENDIAN 1
|
|
355
|
+
#endif
|
|
356
|
+
|
|
357
|
+
#endif /* !defined(SLJIT_BIG_ENDIAN) && !defined(SLJIT_LITTLE_ENDIAN) */
|
|
358
|
+
|
|
359
|
+
/* Sanity check. */
|
|
360
|
+
#if (defined SLJIT_BIG_ENDIAN && SLJIT_BIG_ENDIAN) && (defined SLJIT_LITTLE_ENDIAN && SLJIT_LITTLE_ENDIAN)
|
|
361
|
+
#error "Exactly one endianness must be selected"
|
|
362
|
+
#endif
|
|
363
|
+
|
|
364
|
+
#if !(defined SLJIT_BIG_ENDIAN && SLJIT_BIG_ENDIAN) && !(defined SLJIT_LITTLE_ENDIAN && SLJIT_LITTLE_ENDIAN)
|
|
365
|
+
#error "Exactly one endianness must be selected"
|
|
366
|
+
#endif
|
|
367
|
+
|
|
368
|
+
#ifndef SLJIT_INDIRECT_CALL
|
|
369
|
+
#if (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64) || (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32 && defined _AIX)
|
|
370
|
+
/* It seems certain ppc compilers use an indirect addressing for functions
|
|
371
|
+
which makes things complicated. */
|
|
372
|
+
#define SLJIT_INDIRECT_CALL 1
|
|
373
|
+
#endif
|
|
374
|
+
#endif /* SLJIT_INDIRECT_CALL */
|
|
375
|
+
|
|
376
|
+
#ifndef SLJIT_RETURN_ADDRESS_OFFSET
|
|
377
|
+
#if (defined SLJIT_CONFIG_SPARC_32 && SLJIT_CONFIG_SPARC_32)
|
|
378
|
+
#define SLJIT_RETURN_ADDRESS_OFFSET 8
|
|
379
|
+
#else
|
|
380
|
+
#define SLJIT_RETURN_ADDRESS_OFFSET 0
|
|
381
|
+
#endif
|
|
382
|
+
#endif /* SLJIT_RETURN_ADDRESS_OFFSET */
|
|
383
|
+
|
|
384
|
+
#ifndef SLJIT_SSE2
|
|
385
|
+
|
|
386
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) || (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64)
|
|
387
|
+
/* Turn on SSE2 support on x86. */
|
|
388
|
+
#define SLJIT_SSE2 1
|
|
389
|
+
|
|
390
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32)
|
|
391
|
+
/* Auto detect SSE2 support using CPUID.
|
|
392
|
+
On 64 bit x86 cpus, sse2 must be present. */
|
|
393
|
+
#define SLJIT_DETECT_SSE2 1
|
|
394
|
+
#endif
|
|
395
|
+
|
|
396
|
+
#endif /* (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) || (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) */
|
|
397
|
+
|
|
398
|
+
#endif /* !SLJIT_SSE2 */
|
|
399
|
+
|
|
400
|
+
#ifndef SLJIT_UNALIGNED
|
|
401
|
+
|
|
402
|
+
#if (defined SLJIT_CONFIG_X86_32 && SLJIT_CONFIG_X86_32) \
|
|
403
|
+
|| (defined SLJIT_CONFIG_X86_64 && SLJIT_CONFIG_X86_64) \
|
|
404
|
+
|| (defined SLJIT_CONFIG_ARM_V7 && SLJIT_CONFIG_ARM_V7) \
|
|
405
|
+
|| (defined SLJIT_CONFIG_ARM_THUMB2 && SLJIT_CONFIG_ARM_THUMB2) \
|
|
406
|
+
|| (defined SLJIT_CONFIG_PPC_32 && SLJIT_CONFIG_PPC_32) \
|
|
407
|
+
|| (defined SLJIT_CONFIG_PPC_64 && SLJIT_CONFIG_PPC_64)
|
|
408
|
+
#define SLJIT_UNALIGNED 1
|
|
409
|
+
#endif
|
|
410
|
+
|
|
411
|
+
#endif /* !SLJIT_UNALIGNED */
|
|
412
|
+
|
|
413
|
+
#if (defined SLJIT_EXECUTABLE_ALLOCATOR && SLJIT_EXECUTABLE_ALLOCATOR)
|
|
414
|
+
SLJIT_API_FUNC_ATTRIBUTE void* sljit_malloc_exec(sljit_uw size);
|
|
415
|
+
SLJIT_API_FUNC_ATTRIBUTE void sljit_free_exec(void* ptr);
|
|
416
|
+
#define SLJIT_MALLOC_EXEC(size) sljit_malloc_exec(size)
|
|
417
|
+
#define SLJIT_FREE_EXEC(ptr) sljit_free_exec(ptr)
|
|
418
|
+
#endif
|
|
419
|
+
|
|
420
|
+
#if (defined SLJIT_VERBOSE && SLJIT_VERBOSE)
|
|
421
|
+
#include <stdio.h>
|
|
422
|
+
#endif
|
|
423
|
+
|
|
424
|
+
#if (defined SLJIT_DEBUG && SLJIT_DEBUG)
|
|
425
|
+
|
|
426
|
+
#if !defined(SLJIT_ASSERT) || !defined(SLJIT_ASSERT_STOP)
|
|
427
|
+
|
|
428
|
+
/* SLJIT_HALT_PROCESS must halt the process. */
|
|
429
|
+
#ifndef SLJIT_HALT_PROCESS
|
|
430
|
+
#include <stdlib.h>
|
|
431
|
+
|
|
432
|
+
#define SLJIT_HALT_PROCESS() \
|
|
433
|
+
abort();
|
|
434
|
+
#endif /* !SLJIT_HALT_PROCESS */
|
|
435
|
+
|
|
436
|
+
#include <stdio.h>
|
|
437
|
+
|
|
438
|
+
#endif /* !SLJIT_ASSERT || !SLJIT_ASSERT_STOP */
|
|
439
|
+
|
|
440
|
+
/* Feel free to redefine these two macros. */
|
|
441
|
+
#ifndef SLJIT_ASSERT
|
|
442
|
+
|
|
443
|
+
#define SLJIT_ASSERT(x) \
|
|
444
|
+
do { \
|
|
445
|
+
if (SLJIT_UNLIKELY(!(x))) { \
|
|
446
|
+
printf("Assertion failed at " __FILE__ ":%d\n", __LINE__); \
|
|
447
|
+
SLJIT_HALT_PROCESS(); \
|
|
448
|
+
} \
|
|
449
|
+
} while (0)
|
|
450
|
+
|
|
451
|
+
#endif /* !SLJIT_ASSERT */
|
|
452
|
+
|
|
453
|
+
#ifndef SLJIT_ASSERT_STOP
|
|
454
|
+
|
|
455
|
+
#define SLJIT_ASSERT_STOP() \
|
|
456
|
+
do { \
|
|
457
|
+
printf("Should never been reached " __FILE__ ":%d\n", __LINE__); \
|
|
458
|
+
SLJIT_HALT_PROCESS(); \
|
|
459
|
+
} while (0)
|
|
460
|
+
|
|
461
|
+
#endif /* !SLJIT_ASSERT_STOP */
|
|
462
|
+
|
|
463
|
+
#else /* (defined SLJIT_DEBUG && SLJIT_DEBUG) */
|
|
464
|
+
|
|
465
|
+
/* Forcing empty, but valid statements. */
|
|
466
|
+
#undef SLJIT_ASSERT
|
|
467
|
+
#undef SLJIT_ASSERT_STOP
|
|
468
|
+
|
|
469
|
+
#define SLJIT_ASSERT(x) \
|
|
470
|
+
do { } while (0)
|
|
471
|
+
#define SLJIT_ASSERT_STOP() \
|
|
472
|
+
do { } while (0)
|
|
473
|
+
|
|
474
|
+
#endif /* (defined SLJIT_DEBUG && SLJIT_DEBUG) */
|
|
475
|
+
|
|
476
|
+
#ifndef SLJIT_COMPILE_ASSERT
|
|
477
|
+
|
|
478
|
+
/* Should be improved eventually. */
|
|
479
|
+
#define SLJIT_COMPILE_ASSERT(x, description) \
|
|
480
|
+
SLJIT_ASSERT(x)
|
|
481
|
+
|
|
482
|
+
#endif /* !SLJIT_COMPILE_ASSERT */
|
|
483
|
+
|
|
484
|
+
#endif
|