minilab 1.1.0-x86-mswin32-60
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +8 -0
- data/LICENSE +19 -0
- data/README +105 -0
- data/Rakefile +83 -0
- data/config/environment.rb +23 -0
- data/config/objects.yml +23 -0
- data/lib/analog_io.rb +23 -0
- data/lib/connection_state.rb +13 -0
- data/lib/digital_auxport_io.rb +34 -0
- data/lib/digital_configuration.rb +53 -0
- data/lib/digital_port_io.rb +39 -0
- data/lib/library_translator.rb +46 -0
- data/lib/minilab.rb +130 -0
- data/lib/minilab_constants.rb +20 -0
- data/lib/minilab_context.rb +14 -0
- data/lib/minilab_hardware.rb +112 -0
- data/lib/minilab_wrapper.rb +12 -0
- data/test/system/analog_input.test +3 -0
- data/test/system/analog_output.test +37 -0
- data/test/system/digital_port_input.test +5 -0
- data/test/system/digital_port_output.test +39 -0
- data/test/system/digital_port_read_byte.test +26 -0
- data/test/system/digital_screw_terminals_input.test +2 -0
- data/test/system/digital_screw_terminals_output.test +11 -0
- data/test/system/minilab_driver.rb +83 -0
- data/test/test_helper.rb +15 -0
- data/test/unit/analog_io_test.rb +54 -0
- data/test/unit/connection_state_test.rb +18 -0
- data/test/unit/digital_auxport_io_test.rb +102 -0
- data/test/unit/digital_configuration_test.rb +100 -0
- data/test/unit/digital_port_io_test.rb +67 -0
- data/test/unit/library_translator_test.rb +98 -0
- data/test/unit/minilab_context_test.rb +23 -0
- data/test/unit/minilab_hardware_test.rb +33 -0
- data/test/unit/minilab_test.rb +115 -0
- data/test/unit/minilab_wrapper_test.rb +24 -0
- data/vendor/behaviors/lib/behaviors.rb +50 -0
- data/vendor/behaviors/tasks/behaviors_tasks.rake +140 -0
- data/vendor/behaviors/test/behaviors_tasks_test.rb +71 -0
- data/vendor/behaviors/test/behaviors_test.rb +50 -0
- data/vendor/behaviors/test/tasks_test/Rakefile +16 -0
- data/vendor/behaviors/test/tasks_test/doc/behaviors.html +55 -0
- data/vendor/behaviors/test/tasks_test/lib/user.rb +2 -0
- data/vendor/behaviors/test/tasks_test/test/user_test.rb +17 -0
- data/vendor/constructor-1.0.2/History.txt +11 -0
- data/vendor/constructor-1.0.2/Manifest.txt +6 -0
- data/vendor/constructor-1.0.2/README.txt +77 -0
- data/vendor/constructor-1.0.2/Rakefile +33 -0
- data/vendor/constructor-1.0.2/lib/constructor.rb +119 -0
- data/vendor/constructor-1.0.2/specs/constructor_spec.rb +345 -0
- data/vendor/diy-1.1.1/History.txt +23 -0
- data/vendor/diy-1.1.1/Manifest.txt +88 -0
- data/vendor/diy-1.1.1/README.txt +220 -0
- data/vendor/diy-1.1.1/Rakefile +29 -0
- data/vendor/diy-1.1.1/TODO.txt +9 -0
- data/vendor/diy-1.1.1/homepage/Notes.txt +27 -0
- data/vendor/diy-1.1.1/homepage/Rakefile +14 -0
- data/vendor/diy-1.1.1/homepage/diy_example.png +0 -0
- data/vendor/diy-1.1.1/homepage/index.erb +36 -0
- data/vendor/diy-1.1.1/homepage/index.html +45 -0
- data/vendor/diy-1.1.1/homepage/objects_yml.png +0 -0
- data/vendor/diy-1.1.1/homepage/page_header.graffle +0 -0
- data/vendor/diy-1.1.1/homepage/page_header.html +9 -0
- data/vendor/diy-1.1.1/homepage/page_header.png +0 -0
- data/vendor/diy-1.1.1/lib/diy.rb +365 -0
- data/vendor/diy-1.1.1/sample_code/car.rb +7 -0
- data/vendor/diy-1.1.1/sample_code/chassis.rb +5 -0
- data/vendor/diy-1.1.1/sample_code/diy_example.rb +26 -0
- data/vendor/diy-1.1.1/sample_code/engine.rb +5 -0
- data/vendor/diy-1.1.1/sample_code/objects.yml +10 -0
- data/vendor/diy-1.1.1/test/constructor.rb +119 -0
- data/vendor/diy-1.1.1/test/diy_test.rb +604 -0
- data/vendor/diy-1.1.1/test/files/broken_construction.yml +7 -0
- data/vendor/diy-1.1.1/test/files/cat/cat.rb +3 -0
- data/vendor/diy-1.1.1/test/files/cat/extra_conflict.yml +5 -0
- data/vendor/diy-1.1.1/test/files/cat/heritage.rb +2 -0
- data/vendor/diy-1.1.1/test/files/cat/needs_input.yml +3 -0
- data/vendor/diy-1.1.1/test/files/cat/the_cat_lineage.rb +1 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/dog/dog_view.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/file_resolver.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/other_thing.rb +2 -0
- data/vendor/diy-1.1.1/test/files/dog/simple.yml +11 -0
- data/vendor/diy-1.1.1/test/files/donkey/foo.rb +8 -0
- data/vendor/diy-1.1.1/test/files/donkey/foo/bar/qux.rb +7 -0
- data/vendor/diy-1.1.1/test/files/fud/objects.yml +13 -0
- data/vendor/diy-1.1.1/test/files/fud/toy.rb +14 -0
- data/vendor/diy-1.1.1/test/files/functions/invalid_method.yml +5 -0
- data/vendor/diy-1.1.1/test/files/functions/method_extractor.rb +3 -0
- data/vendor/diy-1.1.1/test/files/functions/nonsingleton_objects.yml +6 -0
- data/vendor/diy-1.1.1/test/files/functions/objects.yml +11 -0
- data/vendor/diy-1.1.1/test/files/functions/thing.rb +3 -0
- data/vendor/diy-1.1.1/test/files/functions/thing_builder.rb +21 -0
- data/vendor/diy-1.1.1/test/files/functions/things_builder.rb +3 -0
- data/vendor/diy-1.1.1/test/files/gnu/objects.yml +14 -0
- data/vendor/diy-1.1.1/test/files/gnu/thinger.rb +7 -0
- data/vendor/diy-1.1.1/test/files/goat/base.rb +8 -0
- data/vendor/diy-1.1.1/test/files/goat/can.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/goat.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/objects.yml +12 -0
- data/vendor/diy-1.1.1/test/files/goat/paper.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/plane.rb +7 -0
- data/vendor/diy-1.1.1/test/files/goat/shirt.rb +6 -0
- data/vendor/diy-1.1.1/test/files/goat/wings.rb +8 -0
- data/vendor/diy-1.1.1/test/files/horse/holder_thing.rb +3 -0
- data/vendor/diy-1.1.1/test/files/horse/objects.yml +7 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/bird.rb +5 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/cat.rb +5 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/reptile/hardshell/turtle.rb +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/animal/reptile/lizard.rb +7 -0
- data/vendor/diy-1.1.1/test/files/namespace/bad_module_specified.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/class_name_combine.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/hello.txt +1 -0
- data/vendor/diy-1.1.1/test/files/namespace/no_module_specified.yml +8 -0
- data/vendor/diy-1.1.1/test/files/namespace/objects.yml +21 -0
- data/vendor/diy-1.1.1/test/files/namespace/road.rb +2 -0
- data/vendor/diy-1.1.1/test/files/namespace/sky.rb +2 -0
- data/vendor/diy-1.1.1/test/files/namespace/subcontext.yml +22 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/air.rb +2 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/fat_cat.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/objects.yml +19 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/pig.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/thread_spinner.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/tick.rb +3 -0
- data/vendor/diy-1.1.1/test/files/non_singleton/yard.rb +2 -0
- data/vendor/diy-1.1.1/test/files/yak/core_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/core_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/core_view.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/data_source.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_model.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_presenter.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/fringe_view.rb +1 -0
- data/vendor/diy-1.1.1/test/files/yak/giant_squid.rb +3 -0
- data/vendor/diy-1.1.1/test/files/yak/krill.rb +2 -0
- data/vendor/diy-1.1.1/test/files/yak/my_objects.yml +21 -0
- data/vendor/diy-1.1.1/test/files/yak/sub_sub_context_test.yml +27 -0
- data/vendor/diy-1.1.1/test/test_helper.rb +39 -0
- data/vendor/ffi-0.4.0-x86-mswin32/LICENSE +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/Rakefile +142 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AbstractMemory.c +412 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AbstractMemory.h +68 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AutoPointer.c +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/AutoPointer.h +18 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Buffer.c +171 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Callback.c +374 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Callback.h +47 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/DynamicLibrary.c +213 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/DynamicLibrary.h +22 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Invoker.c +962 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/LastError.c +135 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/LastError.h +18 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/MemoryPointer.c +156 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/MemoryPointer.h +20 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/NullPointer.c +143 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Platform.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Platform.h +16 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Pointer.c +164 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Pointer.h +25 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Struct.c +477 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Struct.h +26 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Type.c +230 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Type.h +28 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Types.c +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/Types.h +54 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/compat.h +22 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/endian.h +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/extconf.rb +31 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/ffi.c +76 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.bsd.mk +34 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.darwin.mk +75 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.gnu.mk +29 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi.mk +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog +3243 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.libffi +347 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.libgcj +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ChangeLog.v1 +764 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/LICENSE +21 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/Makefile.am +177 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/Makefile.in +1640 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/README +328 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/TODO +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/acinclude.m4 +92 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/aclocal.m4 +7516 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/compile +142 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/config.guess +1516 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/config.sub +1626 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure +24414 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure.ac +365 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/configure.host +11 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/depcomp +584 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/libffi.info +533 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/libffi.texi +541 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/stamp-vti +4 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/doc/version.texi +4 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/fficonfig.h.in +160 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/Makefile.am +9 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/Makefile.in +422 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/ffi.h.in +393 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/include/ffi_common.h +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/install-sh +323 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/libffi.pc.in +10 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/libtool-version +29 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-c.sh +861 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-cxx.sh +1069 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltcf-gcj.sh +700 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltconfig +2862 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/ltmain.sh +6930 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/Makefile.am +8 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/Makefile.in +395 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi.3 +31 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi_call.3 +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/man/ffi_prep_cif.3 +66 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/mdate-sh +201 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/missing +353 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/mkinstalldirs +158 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/ffi.c +284 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/ffitarget.h +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/alpha/osf.S +366 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/ffi.c +309 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/arm/sysv.S +299 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/closures.c +596 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/ffi.c +383 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/ffitarget.h +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/cris/sysv.S +215 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/debug.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/dlmalloc.c +5099 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/eabi.S +128 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/ffi.c +292 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/frv/ffitarget.h +61 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ffi.c +580 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ffitarget.h +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/ia64_flags.h +40 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/ia64/unix.S +560 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/java_raw_api.c +359 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/ffi.c +232 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/ffitarget.h +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m32r/sysv.S +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/ffi.c +278 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/m68k/sysv.S +234 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/ffi.c +926 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/ffitarget.h +202 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/n32.S +534 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/mips/o32.S +381 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/ffi.c +709 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/ffitarget.h +77 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/hpux32.S +368 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/pa/linux.S +357 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/aix.S +225 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/aix_closure.S +247 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/asm.h +125 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/darwin.S +245 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +317 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffi.c +1429 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +800 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ffitarget.h +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/linux64.S +187 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +236 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +327 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/powerpc/sysv.S +230 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/prep_cif.c +174 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/raw_api.c +254 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/ffi.c +780 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/ffitarget.h +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/s390/sysv.S +434 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/ffi.c +716 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/ffitarget.h +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh/sysv.S +850 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/ffi.c +453 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/ffitarget.h +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sh64/sysv.S +530 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/ffi.c +610 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/ffitarget.h +66 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/v8.S +272 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/sparc/v9.S +307 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/types.c +77 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/darwin.S +443 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/darwin64.S +416 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffi.c +475 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffi64.c +572 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/ffitarget.h +90 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/freebsd.S +458 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/sysv.S +437 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/unix64.S +418 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/src/x86/win32.S +391 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/Makefile.am +71 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/Makefile.in +447 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/config/default.exp +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +289 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +263 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +45 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +89 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +89 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +90 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c +72 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +102 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +104 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +110 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +97 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +106 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +117 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +106 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +132 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +121 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +107 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +125 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +105 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +96 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +100 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +101 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +100 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +94 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +99 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +82 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +94 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +52 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +50 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +54 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +51 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +86 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +58 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +57 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +72 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +62 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/many.c +69 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +63 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +160 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +169 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +141 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +118 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +120 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +139 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +98 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +114 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +43 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +49 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +34 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +41 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +42 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +36 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +44 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +44 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +65 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +67 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +59 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +63 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +65 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +64 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +74 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +80 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +67 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +86 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +38 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc +123 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc +53 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/libffi/texinfo.tex +7482 -0
- data/vendor/ffi-0.4.0-x86-mswin32/ext/ffi_c/rbffi.h +23 -0
- data/vendor/ffi-0.4.0-x86-mswin32/gen/Rakefile +12 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/1.8/ffi_c.so +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/1.9/ffi_c.so +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi.rb +11 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/autopointer.rb +61 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/buffer.rb +0 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/callback.rb +10 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/enum.rb +78 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/errno.rb +8 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/ffi.rb +96 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/io.rb +21 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/library.rb +243 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/managedstruct.rb +55 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/memorypointer.rb +73 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/platform.rb +78 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/pointer.rb +119 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/struct.rb +354 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/const_generator.rb +177 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/generator.rb +58 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/generator_task.rb +35 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/struct_generator.rb +194 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/tools/types_generator.rb +123 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/types.rb +153 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/union.rb +17 -0
- data/vendor/ffi-0.4.0-x86-mswin32/lib/ffi/variadic.rb +30 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/bool_spec.rb +24 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/buffer_spec.rb +196 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/callback_spec.rb +560 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/enum_spec.rb +164 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/errno_spec.rb +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/library_spec.rb +144 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/managed_struct_spec.rb +56 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/number_spec.rb +231 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/pointer_spec.rb +195 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/attach_function_spec.rb +27 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/memory_pointer_spec.rb +102 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/spec_helper.rb +1 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/rbx/struct_spec.rb +13 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/spec_helper.rb +17 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/string_spec.rb +103 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_callback_spec.rb +41 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_initialize_spec.rb +30 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/struct_spec.rb +476 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/typedef_spec.rb +48 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/union_spec.rb +60 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/ffi/variadic_spec.rb +84 -0
- data/vendor/ffi-0.4.0-x86-mswin32/spec/spec.opts +4 -0
- data/vendor/hardmock-1.3.7/CHANGES +78 -0
- data/vendor/hardmock-1.3.7/LICENSE +7 -0
- data/vendor/hardmock-1.3.7/README +70 -0
- data/vendor/hardmock-1.3.7/Rakefile +8 -0
- data/vendor/hardmock-1.3.7/config/environment.rb +12 -0
- data/vendor/hardmock-1.3.7/lib/assert_error.rb +23 -0
- data/vendor/hardmock-1.3.7/lib/extend_test_unit.rb +14 -0
- data/vendor/hardmock-1.3.7/lib/hardmock.rb +86 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/errors.rb +22 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expectation.rb +229 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expectation_builder.rb +9 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/expector.rb +26 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/method_cleanout.rb +33 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/mock.rb +180 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/mock_control.rb +53 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/stubbing.rb +210 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/trapper.rb +31 -0
- data/vendor/hardmock-1.3.7/lib/hardmock/utils.rb +9 -0
- data/vendor/hardmock-1.3.7/lib/test_unit_before_after.rb +169 -0
- data/vendor/hardmock-1.3.7/rake_tasks/test.rake +22 -0
- data/vendor/hardmock-1.3.7/test/functional/assert_error_test.rb +52 -0
- data/vendor/hardmock-1.3.7/test/functional/auto_verify_test.rb +178 -0
- data/vendor/hardmock-1.3.7/test/functional/direct_mock_usage_test.rb +396 -0
- data/vendor/hardmock-1.3.7/test/functional/hardmock_test.rb +434 -0
- data/vendor/hardmock-1.3.7/test/functional/stubbing_test.rb +479 -0
- data/vendor/hardmock-1.3.7/test/test_helper.rb +43 -0
- data/vendor/hardmock-1.3.7/test/unit/expectation_builder_test.rb +19 -0
- data/vendor/hardmock-1.3.7/test/unit/expectation_test.rb +372 -0
- data/vendor/hardmock-1.3.7/test/unit/expector_test.rb +57 -0
- data/vendor/hardmock-1.3.7/test/unit/method_cleanout_test.rb +36 -0
- data/vendor/hardmock-1.3.7/test/unit/mock_control_test.rb +175 -0
- data/vendor/hardmock-1.3.7/test/unit/mock_test.rb +279 -0
- data/vendor/hardmock-1.3.7/test/unit/test_unit_before_after_test.rb +452 -0
- data/vendor/hardmock-1.3.7/test/unit/trapper_test.rb +62 -0
- data/vendor/hardmock-1.3.7/test/unit/verify_error_test.rb +40 -0
- data/vendor/mcc/cbw32.dll +0 -0
- data/vendor/systir/systir.rb +403 -0
- data/vendor/systir/test/unit/ui/xml/testrunner.rb +192 -0
- data/vendor/systir/test/unit/ui/xml/xmltestrunner.xslt +109 -0
- metadata +561 -0
@@ -0,0 +1,125 @@
|
|
1
|
+
/* -----------------------------------------------------------------------
|
2
|
+
asm.h - Copyright (c) 1998 Geoffrey Keating
|
3
|
+
|
4
|
+
PowerPC Assembly glue.
|
5
|
+
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
7
|
+
a copy of this software and associated documentation files (the
|
8
|
+
``Software''), to deal in the Software without restriction, including
|
9
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
10
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
11
|
+
permit persons to whom the Software is furnished to do so, subject to
|
12
|
+
the following conditions:
|
13
|
+
|
14
|
+
The above copyright notice and this permission notice shall be included
|
15
|
+
in all copies or substantial portions of the Software.
|
16
|
+
|
17
|
+
THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
18
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
19
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
20
|
+
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
21
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
22
|
+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
23
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
24
|
+
----------------------------------------------------------------------- */
|
25
|
+
|
26
|
+
#define ASM_GLOBAL_DIRECTIVE .globl
|
27
|
+
|
28
|
+
|
29
|
+
#define C_SYMBOL_NAME(name) name
|
30
|
+
/* Macro for a label. */
|
31
|
+
#ifdef __STDC__
|
32
|
+
#define C_LABEL(name) name##:
|
33
|
+
#else
|
34
|
+
#define C_LABEL(name) name/**/:
|
35
|
+
#endif
|
36
|
+
|
37
|
+
/* This seems to always be the case on PPC. */
|
38
|
+
#define ALIGNARG(log2) log2
|
39
|
+
/* For ELF we need the `.type' directive to make shared libs work right. */
|
40
|
+
#define ASM_TYPE_DIRECTIVE(name,typearg) .type name,typearg;
|
41
|
+
#define ASM_SIZE_DIRECTIVE(name) .size name,.-name
|
42
|
+
|
43
|
+
/* If compiled for profiling, call `_mcount' at the start of each function. */
|
44
|
+
#ifdef PROF
|
45
|
+
/* The mcount code relies on a the return address being on the stack
|
46
|
+
to locate our caller and so it can restore it; so store one just
|
47
|
+
for its benefit. */
|
48
|
+
#ifdef PIC
|
49
|
+
#define CALL_MCOUNT \
|
50
|
+
.pushsection; \
|
51
|
+
.section ".data"; \
|
52
|
+
.align ALIGNARG(2); \
|
53
|
+
0:.long 0; \
|
54
|
+
.previous; \
|
55
|
+
mflr %r0; \
|
56
|
+
stw %r0,4(%r1); \
|
57
|
+
bl _GLOBAL_OFFSET_TABLE_@local-4; \
|
58
|
+
mflr %r11; \
|
59
|
+
lwz %r0,0b@got(%r11); \
|
60
|
+
bl JUMPTARGET(_mcount);
|
61
|
+
#else /* PIC */
|
62
|
+
#define CALL_MCOUNT \
|
63
|
+
.section ".data"; \
|
64
|
+
.align ALIGNARG(2); \
|
65
|
+
0:.long 0; \
|
66
|
+
.previous; \
|
67
|
+
mflr %r0; \
|
68
|
+
lis %r11,0b@ha; \
|
69
|
+
stw %r0,4(%r1); \
|
70
|
+
addi %r0,%r11,0b@l; \
|
71
|
+
bl JUMPTARGET(_mcount);
|
72
|
+
#endif /* PIC */
|
73
|
+
#else /* PROF */
|
74
|
+
#define CALL_MCOUNT /* Do nothing. */
|
75
|
+
#endif /* PROF */
|
76
|
+
|
77
|
+
#define ENTRY(name) \
|
78
|
+
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
|
79
|
+
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
|
80
|
+
.align ALIGNARG(2); \
|
81
|
+
C_LABEL(name) \
|
82
|
+
CALL_MCOUNT
|
83
|
+
|
84
|
+
#define EALIGN_W_0 /* No words to insert. */
|
85
|
+
#define EALIGN_W_1 nop
|
86
|
+
#define EALIGN_W_2 nop;nop
|
87
|
+
#define EALIGN_W_3 nop;nop;nop
|
88
|
+
#define EALIGN_W_4 EALIGN_W_3;nop
|
89
|
+
#define EALIGN_W_5 EALIGN_W_4;nop
|
90
|
+
#define EALIGN_W_6 EALIGN_W_5;nop
|
91
|
+
#define EALIGN_W_7 EALIGN_W_6;nop
|
92
|
+
|
93
|
+
/* EALIGN is like ENTRY, but does alignment to 'words'*4 bytes
|
94
|
+
past a 2^align boundary. */
|
95
|
+
#ifdef PROF
|
96
|
+
#define EALIGN(name, alignt, words) \
|
97
|
+
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
|
98
|
+
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
|
99
|
+
.align ALIGNARG(2); \
|
100
|
+
C_LABEL(name) \
|
101
|
+
CALL_MCOUNT \
|
102
|
+
b 0f; \
|
103
|
+
.align ALIGNARG(alignt); \
|
104
|
+
EALIGN_W_##words; \
|
105
|
+
0:
|
106
|
+
#else /* PROF */
|
107
|
+
#define EALIGN(name, alignt, words) \
|
108
|
+
ASM_GLOBAL_DIRECTIVE C_SYMBOL_NAME(name); \
|
109
|
+
ASM_TYPE_DIRECTIVE (C_SYMBOL_NAME(name),@function) \
|
110
|
+
.align ALIGNARG(alignt); \
|
111
|
+
EALIGN_W_##words; \
|
112
|
+
C_LABEL(name)
|
113
|
+
#endif
|
114
|
+
|
115
|
+
#define END(name) \
|
116
|
+
ASM_SIZE_DIRECTIVE(name)
|
117
|
+
|
118
|
+
#ifdef PIC
|
119
|
+
#define JUMPTARGET(name) name##@plt
|
120
|
+
#else
|
121
|
+
#define JUMPTARGET(name) name
|
122
|
+
#endif
|
123
|
+
|
124
|
+
/* Local labels stripped out by the linker. */
|
125
|
+
#define L(x) .L##x
|
@@ -0,0 +1,245 @@
|
|
1
|
+
/* -----------------------------------------------------------------------
|
2
|
+
darwin.S - Copyright (c) 2000 John Hornkvist
|
3
|
+
Copyright (c) 2004 Free Software Foundation, Inc.
|
4
|
+
|
5
|
+
PowerPC Assembly glue.
|
6
|
+
|
7
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
8
|
+
a copy of this software and associated documentation files (the
|
9
|
+
``Software''), to deal in the Software without restriction, including
|
10
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
11
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
12
|
+
permit persons to whom the Software is furnished to do so, subject to
|
13
|
+
the following conditions:
|
14
|
+
|
15
|
+
The above copyright notice and this permission notice shall be included
|
16
|
+
in all copies or substantial portions of the Software.
|
17
|
+
|
18
|
+
THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
19
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
20
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
21
|
+
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
22
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
23
|
+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
24
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
25
|
+
----------------------------------------------------------------------- */
|
26
|
+
|
27
|
+
#if defined(__ppc64__)
|
28
|
+
#define MODE_CHOICE(x, y) y
|
29
|
+
#else
|
30
|
+
#define MODE_CHOICE(x, y) x
|
31
|
+
#endif
|
32
|
+
|
33
|
+
#define g_long MODE_CHOICE(long, quad) /* usage is ".g_long" */
|
34
|
+
|
35
|
+
#define LOG2_GPR_BYTES MODE_CHOICE(2,3) /* log2(GPR_BYTES) */
|
36
|
+
|
37
|
+
#define LIBFFI_ASM
|
38
|
+
#include <fficonfig.h>
|
39
|
+
#include <ffi.h>
|
40
|
+
#define JUMPTARGET(name) name
|
41
|
+
#define L(x) x
|
42
|
+
.text
|
43
|
+
.align 2
|
44
|
+
.globl _ffi_prep_args
|
45
|
+
|
46
|
+
.text
|
47
|
+
.align 2
|
48
|
+
.globl _ffi_call_DARWIN
|
49
|
+
.text
|
50
|
+
.align 2
|
51
|
+
_ffi_call_DARWIN:
|
52
|
+
LFB0:
|
53
|
+
mr r12,r8 /* We only need r12 until the call,
|
54
|
+
so it doesn't have to be saved. */
|
55
|
+
LFB1:
|
56
|
+
/* Save the old stack pointer as AP. */
|
57
|
+
mr r8,r1
|
58
|
+
LCFI0:
|
59
|
+
/* Allocate the stack space we need. */
|
60
|
+
stwux r1,r1,r4
|
61
|
+
|
62
|
+
/* Save registers we use. */
|
63
|
+
mflr r9
|
64
|
+
|
65
|
+
stw r28,-16(r8)
|
66
|
+
stw r29,-12(r8)
|
67
|
+
stw r30,-8(r8)
|
68
|
+
stw r31,-4(r8)
|
69
|
+
|
70
|
+
stw r9,8(r8)
|
71
|
+
stw r2,20(r1)
|
72
|
+
LCFI1:
|
73
|
+
|
74
|
+
/* Save arguments over call. */
|
75
|
+
mr r31,r5 /* flags, */
|
76
|
+
mr r30,r6 /* rvalue, */
|
77
|
+
mr r29,r7 /* function address, */
|
78
|
+
mr r28,r8 /* our AP. */
|
79
|
+
LCFI2:
|
80
|
+
/* Call ffi_prep_args. */
|
81
|
+
mr r4,r1
|
82
|
+
li r9,0
|
83
|
+
|
84
|
+
mtctr r12 /* r12 holds address of _ffi_prep_args. */
|
85
|
+
bctrl
|
86
|
+
lwz r2,20(r1)
|
87
|
+
|
88
|
+
/* Now do the call.
|
89
|
+
Set up cr1 with bits 4-7 of the flags. */
|
90
|
+
mtcrf 0x40,r31
|
91
|
+
/* Get the address to call into CTR. */
|
92
|
+
mtctr r29
|
93
|
+
/* Load all those argument registers.
|
94
|
+
We have set up a nice stack frame, just load it into registers. */
|
95
|
+
lwz r3,20+(1*4)(r1)
|
96
|
+
lwz r4,20+(2*4)(r1)
|
97
|
+
lwz r5,20+(3*4)(r1)
|
98
|
+
lwz r6,20+(4*4)(r1)
|
99
|
+
nop
|
100
|
+
lwz r7,20+(5*4)(r1)
|
101
|
+
lwz r8,20+(6*4)(r1)
|
102
|
+
lwz r9,20+(7*4)(r1)
|
103
|
+
lwz r10,20+(8*4)(r1)
|
104
|
+
|
105
|
+
L1:
|
106
|
+
/* Load all the FP registers. */
|
107
|
+
bf 6,L2 /* No floats to load. */
|
108
|
+
lfd f1,-16-(13*8)(r28)
|
109
|
+
lfd f2,-16-(12*8)(r28)
|
110
|
+
lfd f3,-16-(11*8)(r28)
|
111
|
+
lfd f4,-16-(10*8)(r28)
|
112
|
+
nop
|
113
|
+
lfd f5,-16-(9*8)(r28)
|
114
|
+
lfd f6,-16-(8*8)(r28)
|
115
|
+
lfd f7,-16-(7*8)(r28)
|
116
|
+
lfd f8,-16-(6*8)(r28)
|
117
|
+
nop
|
118
|
+
lfd f9,-16-(5*8)(r28)
|
119
|
+
lfd f10,-16-(4*8)(r28)
|
120
|
+
lfd f11,-16-(3*8)(r28)
|
121
|
+
lfd f12,-16-(2*8)(r28)
|
122
|
+
nop
|
123
|
+
lfd f13,-16-(1*8)(r28)
|
124
|
+
|
125
|
+
L2:
|
126
|
+
mr r12,r29 /* Put the target address in r12 as specified. */
|
127
|
+
mtctr r12
|
128
|
+
nop
|
129
|
+
nop
|
130
|
+
/* Make the call. */
|
131
|
+
bctrl
|
132
|
+
|
133
|
+
/* Now, deal with the return value. */
|
134
|
+
mtcrf 0x01,r31
|
135
|
+
|
136
|
+
bt 30,L(done_return_value)
|
137
|
+
bt 29,L(fp_return_value)
|
138
|
+
stw r3,0(r30)
|
139
|
+
bf 28,L(done_return_value)
|
140
|
+
stw r4,4(r30)
|
141
|
+
|
142
|
+
/* Fall through. */
|
143
|
+
|
144
|
+
L(done_return_value):
|
145
|
+
/* Restore the registers we used and return. */
|
146
|
+
lwz r9,8(r28)
|
147
|
+
lwz r31,-4(r28)
|
148
|
+
mtlr r9
|
149
|
+
lwz r30,-8(r28)
|
150
|
+
lwz r29,-12(r28)
|
151
|
+
lwz r28,-16(r28)
|
152
|
+
lwz r1,0(r1)
|
153
|
+
blr
|
154
|
+
|
155
|
+
L(fp_return_value):
|
156
|
+
/* Do we have long double to store? */
|
157
|
+
bf 31,L(fd_return_value)
|
158
|
+
stfd f1,0(r30)
|
159
|
+
stfd f2,8(r30)
|
160
|
+
b L(done_return_value)
|
161
|
+
|
162
|
+
L(fd_return_value):
|
163
|
+
/* Do we have double to store? */
|
164
|
+
bf 28,L(float_return_value)
|
165
|
+
stfd f1,0(r30)
|
166
|
+
b L(done_return_value)
|
167
|
+
|
168
|
+
L(float_return_value):
|
169
|
+
/* We only have a float to store. */
|
170
|
+
stfs f1,0(r30)
|
171
|
+
b L(done_return_value)
|
172
|
+
|
173
|
+
LFE1:
|
174
|
+
/* END(_ffi_call_DARWIN) */
|
175
|
+
|
176
|
+
/* Provide a null definition of _ffi_call_AIX. */
|
177
|
+
.text
|
178
|
+
.align 2
|
179
|
+
.globl _ffi_call_AIX
|
180
|
+
.text
|
181
|
+
.align 2
|
182
|
+
_ffi_call_AIX:
|
183
|
+
blr
|
184
|
+
/* END(_ffi_call_AIX) */
|
185
|
+
|
186
|
+
.data
|
187
|
+
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms
|
188
|
+
EH_frame1:
|
189
|
+
.set L$set$0,LECIE1-LSCIE1
|
190
|
+
.long L$set$0 ; Length of Common Information Entry
|
191
|
+
LSCIE1:
|
192
|
+
.long 0x0 ; CIE Identifier Tag
|
193
|
+
.byte 0x1 ; CIE Version
|
194
|
+
.ascii "zR\0" ; CIE Augmentation
|
195
|
+
.byte 0x1 ; uleb128 0x1; CIE Code Alignment Factor
|
196
|
+
.byte 0x7c ; sleb128 -4; CIE Data Alignment Factor
|
197
|
+
.byte 0x41 ; CIE RA Column
|
198
|
+
.byte 0x1 ; uleb128 0x1; Augmentation size
|
199
|
+
.byte 0x90 ; FDE Encoding (indirect pcrel)
|
200
|
+
.byte 0xc ; DW_CFA_def_cfa
|
201
|
+
.byte 0x1 ; uleb128 0x1
|
202
|
+
.byte 0x0 ; uleb128 0x0
|
203
|
+
.align LOG2_GPR_BYTES
|
204
|
+
LECIE1:
|
205
|
+
.globl _ffi_call_DARWIN.eh
|
206
|
+
_ffi_call_DARWIN.eh:
|
207
|
+
LSFDE1:
|
208
|
+
.set L$set$1,LEFDE1-LASFDE1
|
209
|
+
.long L$set$1 ; FDE Length
|
210
|
+
LASFDE1:
|
211
|
+
.long LASFDE1-EH_frame1 ; FDE CIE offset
|
212
|
+
.g_long LLFB0$non_lazy_ptr-. ; FDE initial location
|
213
|
+
.set L$set$3,LFE1-LFB0
|
214
|
+
.g_long L$set$3 ; FDE address range
|
215
|
+
.byte 0x0 ; uleb128 0x0; Augmentation size
|
216
|
+
.byte 0x4 ; DW_CFA_advance_loc4
|
217
|
+
.set L$set$4,LCFI0-LFB1
|
218
|
+
.long L$set$4
|
219
|
+
.byte 0xd ; DW_CFA_def_cfa_register
|
220
|
+
.byte 0x08 ; uleb128 0x08
|
221
|
+
.byte 0x4 ; DW_CFA_advance_loc4
|
222
|
+
.set L$set$5,LCFI1-LCFI0
|
223
|
+
.long L$set$5
|
224
|
+
.byte 0x11 ; DW_CFA_offset_extended_sf
|
225
|
+
.byte 0x41 ; uleb128 0x41
|
226
|
+
.byte 0x7e ; sleb128 -2
|
227
|
+
.byte 0x9f ; DW_CFA_offset, column 0x1f
|
228
|
+
.byte 0x1 ; uleb128 0x1
|
229
|
+
.byte 0x9e ; DW_CFA_offset, column 0x1e
|
230
|
+
.byte 0x2 ; uleb128 0x2
|
231
|
+
.byte 0x9d ; DW_CFA_offset, column 0x1d
|
232
|
+
.byte 0x3 ; uleb128 0x3
|
233
|
+
.byte 0x9c ; DW_CFA_offset, column 0x1c
|
234
|
+
.byte 0x4 ; uleb128 0x4
|
235
|
+
.byte 0x4 ; DW_CFA_advance_loc4
|
236
|
+
.set L$set$6,LCFI2-LCFI1
|
237
|
+
.long L$set$6
|
238
|
+
.byte 0xd ; DW_CFA_def_cfa_register
|
239
|
+
.byte 0x1c ; uleb128 0x1c
|
240
|
+
.align LOG2_GPR_BYTES
|
241
|
+
LEFDE1:
|
242
|
+
.data
|
243
|
+
.align LOG2_GPR_BYTES
|
244
|
+
LLFB0$non_lazy_ptr:
|
245
|
+
.g_long LFB0
|
@@ -0,0 +1,317 @@
|
|
1
|
+
/* -----------------------------------------------------------------------
|
2
|
+
darwin_closure.S - Copyright (c) 2002, 2003, 2004, Free Software Foundation,
|
3
|
+
Inc. based on ppc_closure.S
|
4
|
+
|
5
|
+
PowerPC Assembly glue.
|
6
|
+
|
7
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
8
|
+
a copy of this software and associated documentation files (the
|
9
|
+
``Software''), to deal in the Software without restriction, including
|
10
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
11
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
12
|
+
permit persons to whom the Software is furnished to do so, subject to
|
13
|
+
the following conditions:
|
14
|
+
|
15
|
+
The above copyright notice and this permission notice shall be included
|
16
|
+
in all copies or substantial portions of the Software.
|
17
|
+
|
18
|
+
THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
19
|
+
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
20
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
21
|
+
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
22
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
23
|
+
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
24
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
25
|
+
----------------------------------------------------------------------- */
|
26
|
+
|
27
|
+
#define LIBFFI_ASM
|
28
|
+
#define L(x) x
|
29
|
+
|
30
|
+
#if defined(__ppc64__)
|
31
|
+
#define MODE_CHOICE(x, y) y
|
32
|
+
#else
|
33
|
+
#define MODE_CHOICE(x, y) x
|
34
|
+
#endif
|
35
|
+
|
36
|
+
#define lgu MODE_CHOICE(lwzu, ldu)
|
37
|
+
|
38
|
+
#define g_long MODE_CHOICE(long, quad) /* usage is ".g_long" */
|
39
|
+
|
40
|
+
#define LOG2_GPR_BYTES MODE_CHOICE(2,3) /* log2(GPR_BYTES) */
|
41
|
+
|
42
|
+
.file "darwin_closure.S"
|
43
|
+
.text
|
44
|
+
.align LOG2_GPR_BYTES
|
45
|
+
.globl _ffi_closure_ASM
|
46
|
+
|
47
|
+
.text
|
48
|
+
.align LOG2_GPR_BYTES
|
49
|
+
_ffi_closure_ASM:
|
50
|
+
LFB1:
|
51
|
+
mflr r0 /* extract return address */
|
52
|
+
stw r0,8(r1) /* save the return address */
|
53
|
+
LCFI0:
|
54
|
+
/* 24 Bytes (Linkage Area)
|
55
|
+
32 Bytes (outgoing parameter area, always reserved)
|
56
|
+
104 Bytes (13*8 from FPR)
|
57
|
+
16 Bytes (result)
|
58
|
+
176 Bytes */
|
59
|
+
|
60
|
+
stwu r1,-176(r1) /* skip over caller save area
|
61
|
+
keep stack aligned to 16. */
|
62
|
+
LCFI1:
|
63
|
+
/* We want to build up an area for the parameters passed
|
64
|
+
in registers. (both floating point and integer) */
|
65
|
+
|
66
|
+
/* We store gpr 3 to gpr 10 (aligned to 4)
|
67
|
+
in the parents outgoing area. */
|
68
|
+
stw r3,200(r1)
|
69
|
+
stw r4,204(r1)
|
70
|
+
stw r5,208(r1)
|
71
|
+
stw r6,212(r1)
|
72
|
+
stw r7,216(r1)
|
73
|
+
stw r8,220(r1)
|
74
|
+
stw r9,224(r1)
|
75
|
+
stw r10,228(r1)
|
76
|
+
|
77
|
+
/* We save fpr 1 to fpr 13. (aligned to 8) */
|
78
|
+
stfd f1,56(r1)
|
79
|
+
stfd f2,64(r1)
|
80
|
+
stfd f3,72(r1)
|
81
|
+
stfd f4,80(r1)
|
82
|
+
stfd f5,88(r1)
|
83
|
+
stfd f6,96(r1)
|
84
|
+
stfd f7,104(r1)
|
85
|
+
stfd f8,112(r1)
|
86
|
+
stfd f9,120(r1)
|
87
|
+
stfd f10,128(r1)
|
88
|
+
stfd f11,136(r1)
|
89
|
+
stfd f12,144(r1)
|
90
|
+
stfd f13,152(r1)
|
91
|
+
|
92
|
+
/* Set up registers for the routine that actually does the work
|
93
|
+
get the context pointer from the trampoline. */
|
94
|
+
mr r3,r11
|
95
|
+
|
96
|
+
/* Now load up the pointer to the result storage. */
|
97
|
+
addi r4,r1,160
|
98
|
+
|
99
|
+
/* Now load up the pointer to the saved gpr registers. */
|
100
|
+
addi r5,r1,200
|
101
|
+
|
102
|
+
/* Now load up the pointer to the saved fpr registers. */
|
103
|
+
addi r6,r1,56
|
104
|
+
|
105
|
+
/* Make the call. */
|
106
|
+
bl Lffi_closure_helper_DARWIN$stub
|
107
|
+
|
108
|
+
/* Now r3 contains the return type
|
109
|
+
so use it to look up in a table
|
110
|
+
so we know how to deal with each type. */
|
111
|
+
|
112
|
+
/* Look up the proper starting point in table
|
113
|
+
by using return type as offset. */
|
114
|
+
addi r5,r1,160 /* Get pointer to results area. */
|
115
|
+
bl Lget_ret_type0_addr /* Get pointer to Lret_type0 into LR. */
|
116
|
+
mflr r4 /* Move to r4. */
|
117
|
+
slwi r3,r3,4 /* Now multiply return type by 16. */
|
118
|
+
add r3,r3,r4 /* Add contents of table to table address. */
|
119
|
+
mtctr r3
|
120
|
+
bctr /* Jump to it. */
|
121
|
+
LFE1:
|
122
|
+
/* Each of the ret_typeX code fragments has to be exactly 16 bytes long
|
123
|
+
(4 instructions). For cache effectiveness we align to a 16 byte boundary
|
124
|
+
first. */
|
125
|
+
|
126
|
+
.align 4
|
127
|
+
|
128
|
+
nop
|
129
|
+
nop
|
130
|
+
nop
|
131
|
+
Lget_ret_type0_addr:
|
132
|
+
blrl
|
133
|
+
|
134
|
+
/* case FFI_TYPE_VOID */
|
135
|
+
Lret_type0:
|
136
|
+
b Lfinish
|
137
|
+
nop
|
138
|
+
nop
|
139
|
+
nop
|
140
|
+
|
141
|
+
/* case FFI_TYPE_INT */
|
142
|
+
Lret_type1:
|
143
|
+
lwz r3,0(r5)
|
144
|
+
b Lfinish
|
145
|
+
nop
|
146
|
+
nop
|
147
|
+
|
148
|
+
/* case FFI_TYPE_FLOAT */
|
149
|
+
Lret_type2:
|
150
|
+
lfs f1,0(r5)
|
151
|
+
b Lfinish
|
152
|
+
nop
|
153
|
+
nop
|
154
|
+
|
155
|
+
/* case FFI_TYPE_DOUBLE */
|
156
|
+
Lret_type3:
|
157
|
+
lfd f1,0(r5)
|
158
|
+
b Lfinish
|
159
|
+
nop
|
160
|
+
nop
|
161
|
+
|
162
|
+
/* case FFI_TYPE_LONGDOUBLE */
|
163
|
+
Lret_type4:
|
164
|
+
lfd f1,0(r5)
|
165
|
+
lfd f2,8(r5)
|
166
|
+
b Lfinish
|
167
|
+
nop
|
168
|
+
|
169
|
+
/* case FFI_TYPE_UINT8 */
|
170
|
+
Lret_type5:
|
171
|
+
lbz r3,3(r5)
|
172
|
+
b Lfinish
|
173
|
+
nop
|
174
|
+
nop
|
175
|
+
|
176
|
+
/* case FFI_TYPE_SINT8 */
|
177
|
+
Lret_type6:
|
178
|
+
lbz r3,3(r5)
|
179
|
+
extsb r3,r3
|
180
|
+
b Lfinish
|
181
|
+
nop
|
182
|
+
|
183
|
+
/* case FFI_TYPE_UINT16 */
|
184
|
+
Lret_type7:
|
185
|
+
lhz r3,2(r5)
|
186
|
+
b Lfinish
|
187
|
+
nop
|
188
|
+
nop
|
189
|
+
|
190
|
+
/* case FFI_TYPE_SINT16 */
|
191
|
+
Lret_type8:
|
192
|
+
lha r3,2(r5)
|
193
|
+
b Lfinish
|
194
|
+
nop
|
195
|
+
nop
|
196
|
+
|
197
|
+
/* case FFI_TYPE_UINT32 */
|
198
|
+
Lret_type9:
|
199
|
+
lwz r3,0(r5)
|
200
|
+
b Lfinish
|
201
|
+
nop
|
202
|
+
nop
|
203
|
+
|
204
|
+
/* case FFI_TYPE_SINT32 */
|
205
|
+
Lret_type10:
|
206
|
+
lwz r3,0(r5)
|
207
|
+
b Lfinish
|
208
|
+
nop
|
209
|
+
nop
|
210
|
+
|
211
|
+
/* case FFI_TYPE_UINT64 */
|
212
|
+
Lret_type11:
|
213
|
+
lwz r3,0(r5)
|
214
|
+
lwz r4,4(r5)
|
215
|
+
b Lfinish
|
216
|
+
nop
|
217
|
+
|
218
|
+
/* case FFI_TYPE_SINT64 */
|
219
|
+
Lret_type12:
|
220
|
+
lwz r3,0(r5)
|
221
|
+
lwz r4,4(r5)
|
222
|
+
b Lfinish
|
223
|
+
nop
|
224
|
+
|
225
|
+
/* case FFI_TYPE_STRUCT */
|
226
|
+
Lret_type13:
|
227
|
+
b Lfinish
|
228
|
+
nop
|
229
|
+
nop
|
230
|
+
nop
|
231
|
+
|
232
|
+
/* case FFI_TYPE_POINTER */
|
233
|
+
Lret_type14:
|
234
|
+
lwz r3,0(r5)
|
235
|
+
b Lfinish
|
236
|
+
nop
|
237
|
+
nop
|
238
|
+
|
239
|
+
/* case done */
|
240
|
+
Lfinish:
|
241
|
+
addi r1,r1,176 /* Restore stack pointer. */
|
242
|
+
lwz r0,8(r1) /* Get return address. */
|
243
|
+
mtlr r0 /* Reset link register. */
|
244
|
+
blr
|
245
|
+
|
246
|
+
/* END(ffi_closure_ASM) */
|
247
|
+
|
248
|
+
.data
|
249
|
+
.section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support
|
250
|
+
EH_frame1:
|
251
|
+
.set L$set$0,LECIE1-LSCIE1
|
252
|
+
.long L$set$0 ; Length of Common Information Entry
|
253
|
+
LSCIE1:
|
254
|
+
.long 0x0 ; CIE Identifier Tag
|
255
|
+
.byte 0x1 ; CIE Version
|
256
|
+
.ascii "zR\0" ; CIE Augmentation
|
257
|
+
.byte 0x1 ; uleb128 0x1; CIE Code Alignment Factor
|
258
|
+
.byte 0x7c ; sleb128 -4; CIE Data Alignment Factor
|
259
|
+
.byte 0x41 ; CIE RA Column
|
260
|
+
.byte 0x1 ; uleb128 0x1; Augmentation size
|
261
|
+
.byte 0x90 ; FDE Encoding (indirect pcrel)
|
262
|
+
.byte 0xc ; DW_CFA_def_cfa
|
263
|
+
.byte 0x1 ; uleb128 0x1
|
264
|
+
.byte 0x0 ; uleb128 0x0
|
265
|
+
.align LOG2_GPR_BYTES
|
266
|
+
LECIE1:
|
267
|
+
.globl _ffi_closure_ASM.eh
|
268
|
+
_ffi_closure_ASM.eh:
|
269
|
+
LSFDE1:
|
270
|
+
.set L$set$1,LEFDE1-LASFDE1
|
271
|
+
.long L$set$1 ; FDE Length
|
272
|
+
|
273
|
+
LASFDE1:
|
274
|
+
.long LASFDE1-EH_frame1 ; FDE CIE offset
|
275
|
+
.g_long LLFB1$non_lazy_ptr-. ; FDE initial location
|
276
|
+
.set L$set$3,LFE1-LFB1
|
277
|
+
.g_long L$set$3 ; FDE address range
|
278
|
+
.byte 0x0 ; uleb128 0x0; Augmentation size
|
279
|
+
.byte 0x4 ; DW_CFA_advance_loc4
|
280
|
+
.set L$set$3,LCFI1-LCFI0
|
281
|
+
.long L$set$3
|
282
|
+
.byte 0xe ; DW_CFA_def_cfa_offset
|
283
|
+
.byte 176,1 ; uleb128 176
|
284
|
+
.byte 0x4 ; DW_CFA_advance_loc4
|
285
|
+
.set L$set$4,LCFI0-LFB1
|
286
|
+
.long L$set$4
|
287
|
+
.byte 0x11 ; DW_CFA_offset_extended_sf
|
288
|
+
.byte 0x41 ; uleb128 0x41
|
289
|
+
.byte 0x7e ; sleb128 -2
|
290
|
+
.align LOG2_GPR_BYTES
|
291
|
+
LEFDE1:
|
292
|
+
.data
|
293
|
+
.align LOG2_GPR_BYTES
|
294
|
+
LDFCM0:
|
295
|
+
.section __TEXT,__picsymbolstub1,symbol_stubs,pure_instructions,32
|
296
|
+
.align LOG2_GPR_BYTES
|
297
|
+
Lffi_closure_helper_DARWIN$stub:
|
298
|
+
#if 1
|
299
|
+
.indirect_symbol _ffi_closure_helper_DARWIN
|
300
|
+
mflr r0
|
301
|
+
bcl 20,31,LO$ffi_closure_helper_DARWIN
|
302
|
+
LO$ffi_closure_helper_DARWIN:
|
303
|
+
mflr r11
|
304
|
+
addis r11,r11,ha16(L_ffi_closure_helper_DARWIN$lazy_ptr - LO$ffi_closure_helper_DARWIN)
|
305
|
+
mtlr r0
|
306
|
+
lgu r12,lo16(L_ffi_closure_helper_DARWIN$lazy_ptr - LO$ffi_closure_helper_DARWIN)(r11)
|
307
|
+
mtctr r12
|
308
|
+
bctr
|
309
|
+
.lazy_symbol_pointer
|
310
|
+
L_ffi_closure_helper_DARWIN$lazy_ptr:
|
311
|
+
.indirect_symbol _ffi_closure_helper_DARWIN
|
312
|
+
.g_long dyld_stub_binding_helper
|
313
|
+
#endif
|
314
|
+
.data
|
315
|
+
.align LOG2_GPR_BYTES
|
316
|
+
LLFB1$non_lazy_ptr:
|
317
|
+
.g_long LFB1
|