benchmark: eina: remove outdated ecore_hash
authorStefan Schmidt <s.schmidt@samsung.com>
Wed, 17 Jun 2020 11:21:24 +0000 (13:21 +0200)
committerJongmin Lee <jm105.lee@samsung.com>
Mon, 6 Jul 2020 23:18:08 +0000 (08:18 +0900)
Ecore_hash is an ancestor of eina_hash and not used anywhere anymore.
We simply forgot to remove it from our benchmark utility.

Together with ecore_hash we are removing ecore_strings, which uses it,
and the corresponding benchmark files.

Signed-off-by: Stefan Schmidt <s.schmidt@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D12042

po/POTFILES.in
src/benchmarks/eina/Ecore_Data.h
src/benchmarks/eina/ecore_hash.c [deleted file]
src/benchmarks/eina/ecore_strings.c [deleted file]
src/benchmarks/eina/eina_bench.c
src/benchmarks/eina/eina_bench.h
src/benchmarks/eina/eina_bench_hash.c [deleted file]
src/benchmarks/eina/eina_bench_stringshare.c
src/benchmarks/eina/eina_bench_stringshare_e17.c [deleted file]
src/benchmarks/eina/meson.build

index 4c906e9..9431715 100644 (file)
@@ -177,8 +177,611 @@ src/lib/elementary/elm_web2.c
 src/lib/elementary/efl_ui_widget.c
 src/lib/elementary/efl_ui_win.c
 src/lib/elementary/els_box.c
-src/lib/elementary/els_cursor.c
-src/lib/elementary/els_tooltip.c
-src/lib/elementary/elu_ews_wm.c
-src/modules/elementary/test_entry/mod.c
-src/modules/elementary/test_map/mod.c
+src/lib/elementary/elm_list.c
+src/lib/elementary/elm_widget_item_container_eo.c
+src/lib/elementary/elm_conformant_eo.c
+src/lib/elementary/efl_ui_flip_eo.legacy.c
+src/lib/elementary/elm_multibuttonentry_item_eo.legacy.c
+src/lib/elementary/elm_widget_item_static_focus_eo.c
+src/lib/elementary/efl_ui_format.c
+src/lib/elementary/elm_hover_eo.c
+src/lib/elementary/elm_popup_eo.legacy.c
+src/lib/elementary/elm_route.c
+src/lib/elementary/elm_ctxpopup_item_eo.legacy.c
+src/lib/elementary/efl_ui_win_legacy_eo.c
+src/lib/elementary/elm_hoversel_eo.c
+src/lib/elementary/efl_ui_spotlight_scroll_manager.c
+src/lib/elementary/elm_access_eo.c
+src/lib/elementary/efl_ui_navigation_layout.c
+src/lib/elementary/elm_separator_eo.legacy.c
+src/lib/elementary/elm_photo_eo.c
+src/lib/ecore_drm2/ecore_drm2_fb.c
+src/lib/ecore_drm2/ecore_drm2.c
+src/lib/ecore_drm2/ecore_drm2_plane.c
+src/lib/ecore_drm2/ecore_drm2_outputs.c
+src/lib/ecore_drm2/ecore_drm2_device.c
+src/lib/ecore_imf_evas/ecore_imf_evas.c
+src/lib/ecore_buffer/shared_buffer.c
+src/lib/ecore_buffer/ecore_buffer.c
+src/lib/ecore_buffer/ecore_buffer_consumer.c
+src/lib/ecore_buffer/buffer_queue.c
+src/lib/ecore_buffer/ecore_buffer_con.c
+src/lib/ecore_buffer/ecore_buffer_provider.c
+src/lib/ecore_buffer/bq_mgr_protocol.c
+src/lib/ecore_buffer/ecore_buffer_queue_main.c
+src/lib/eeze/eeze_disk_udev.c
+src/lib/eeze/eeze_disk_libmount_new.c
+src/lib/eeze/eeze_sensor.c
+src/lib/eeze/eeze_net.c
+src/lib/eeze/eeze_udev_find.c
+src/lib/eeze/eeze_disk_libmount.c
+src/lib/eeze/eeze_udev_walk.c
+src/lib/eeze/eeze_disk_mount.c
+src/lib/eeze/eeze_disk_libmount_old.c
+src/lib/eeze/eeze_udev_private.c
+src/lib/eeze/eeze_udev_syspath.c
+src/lib/eeze/eeze_disk_dummy.c
+src/lib/eeze/eeze_main.c
+src/lib/eeze/eeze_disk.c
+src/lib/eeze/eeze_udev_watch.c
+src/lib/ector/ector_main.c
+src/lib/ector/ector_renderer_gradient_radial.c
+src/lib/ector/ector_renderer_shape.c
+src/lib/ector/gl/ector_gl_surface.c
+src/lib/ector/gl/ector_gl_shader.c
+src/lib/ector/gl/ector_gl_buffer.c
+src/lib/ector/gl/ector_renderer_gl_shape.c
+src/lib/ector/gl/ector_renderer_gl.c
+src/lib/ector/gl/ector_renderer_gl_gradient_radial.c
+src/lib/ector/gl/ector_renderer_gl_gradient_linear.c
+src/lib/ector/ector_renderer.c
+src/lib/ector/ector_buffer.c
+src/lib/ector/ector_renderer_gradient.c
+src/lib/ector/software/ector_software_gradient_sse3.c
+src/lib/ector/software/ector_renderer_software_gradient_radial.c
+src/lib/ector/software/ector_software_rasterizer.c
+src/lib/ector/software/ector_software_buffer.c
+src/lib/ector/software/ector_software_surface.c
+src/lib/ector/software/ector_software_gradient.c
+src/lib/ector/software/ector_renderer_software_image.c
+src/lib/ector/software/ector_renderer_software_gradient_linear.c
+src/lib/ector/software/ector_renderer_software_shape.c
+src/lib/ector/ector_renderer_gradient_linear.c
+src/lib/ector/ector_renderer_image.c
+src/lib/ethumb_client/ethumb_client.c
+src/lib/ecore_fb/ecore_fb.c
+src/lib/ecore_fb/ecore_fb_ts.c
+src/lib/ecore_fb/ecore_fb_vt.c
+src/lib/ecore_fb/ecore_fb_li.c
+src/lib/elua/io.c
+src/lib/elua/elua.c
+src/lib/elua/cache.c
+src/lib/ethumb/ethumb.c
+src/lib/ethumb/md5.c
+src/lib/ecore_input_evas/ecore_input_evas.c
+src/lib/eina/eina_abi.c
+src/lib/eina/eina_safepointer.c
+src/lib/eina/eina_mmap.c
+src/lib/eina/eina_bezier.c
+src/lib/eina/eina_binbuf.c
+src/lib/eina/eina_vpath_xdg.c
+src/lib/eina/eina_tmpstr.c
+src/lib/eina/eina_hamster.c
+src/lib/eina/eina_quaternion.c
+src/lib/eina/eina_unicode.c
+src/lib/eina/eina_value.c
+src/lib/eina/eina_matrix.c
+src/lib/eina/eina_thread_queue.c
+src/lib/eina/eina_debug_cpu.c
+src/lib/eina/eina_file_common.c
+src/lib/eina/eina_hash.c
+src/lib/eina/eina_freeq.c
+src/lib/eina/eina_debug_chunk.c
+src/lib/eina/eina_crc.c
+src/lib/eina/eina_strbuf.c
+src/lib/eina/eina_cpu.c
+src/lib/eina/eina_quad.c
+src/lib/eina/eina_tiler.c
+src/lib/eina/eina_debug_thread.c
+src/lib/eina/eina_debug_bt_file.c
+src/lib/eina/eina_inlist.c
+src/lib/eina/eina_evlog.c
+src/lib/eina/eina_strbuf_common.c
+src/lib/eina/eina_safety_checks.c
+src/lib/eina/eina_cow.c
+src/lib/eina/eina_error.c
+src/lib/eina/eina_debug_bt.c
+src/lib/eina/eina_ustrbuf.c
+src/lib/eina/eina_debug_timer.c
+src/lib/eina/eina_benchmark.c
+src/lib/eina/eina_accessor.c
+src/lib/eina/eina_magic.c
+src/lib/eina/eina_sched.c
+src/lib/eina/eina_vpath.c
+src/lib/eina/eina_fp.c
+src/lib/eina/eina_convert.c
+src/lib/eina/eina_str.c
+src/lib/eina/eina_iterator.c
+src/lib/eina/eina_list.c
+src/lib/eina/eina_matrixsparse.c
+src/lib/eina/eina_rbtree.c
+src/lib/eina/eina_counter.c
+src/lib/eina/eina_main.c
+src/lib/eina/eina_module.c
+src/lib/eina/eina_binshare.c
+src/lib/eina/eina_debug.c
+src/lib/eina/eina_value_util.c
+src/lib/eina/eina_inarray.c
+src/lib/eina/eina_thread.c
+src/lib/eina/eina_mempool.c
+src/lib/eina/eina_slstr.c
+src/lib/eina/eina_promise.c
+src/lib/eina/eina_lock.c
+src/lib/eina/eina_xattr.c
+src/lib/eina/eina_simple_xml_parser.c
+src/lib/eina/eina_array.c
+src/lib/eina/eina_lalloc.c
+src/lib/eina/eina_file.c
+src/lib/eina/eina_rectangle.c
+src/lib/eina/eina_util.c
+src/lib/eina/eina_file_win32.c
+src/lib/eina/eina_share_common.c
+src/lib/eina/eina_prefix.c
+src/lib/eina/eina_log.c
+src/lib/eina/eina_ustringshare.c
+src/lib/eina/eina_quadtree.c
+src/lib/eina/eina_stringshare.c
+src/lib/eina/eina_abstract_content.c
+src/lib/efl_canvas_wl/dmabuf.c
+src/lib/efl_canvas_wl/efl_canvas_wl.c
+src/lib/evil/evil_dlfcn.c
+src/lib/evil/evil_locale.c
+src/lib/evil/evil_unistd.c
+src/lib/evil/evil_time.c
+src/lib/evil/evil_langinfo.c
+src/lib/evil/evil_string.c
+src/lib/evil/evil_fcntl.c
+src/lib/evil/evil_main.c
+src/lib/evil/evil_util.c
+src/lib/evil/evil_mman.c
+src/lib/evil/evil_stdlib.c
+src/lib/evil/evil_stdio.c
+src/lib/efl/interfaces/efl_model_provider.c
+src/lib/efl/interfaces/efl_io_sizer.c
+src/lib/efl/interfaces/efl_io_closer.c
+src/lib/efl/interfaces/efl_text_markup_util.c
+src/lib/efl/interfaces/efl_gfx_color.c
+src/lib/efl/interfaces/efl_io_writer.c
+src/lib/efl/interfaces/efl_io_buffer.c
+src/lib/efl/interfaces/efl_mvvm_common.c
+src/lib/efl/interfaces/efl_io_queue.c
+src/lib/efl/interfaces/efl_file.c
+src/lib/efl/interfaces/efl_interfaces_main.c
+src/lib/efl/interfaces/efl_ui_layout_orientable_readonly.c
+src/lib/efl/interfaces/efl_io_reader.c
+src/lib/efl/interfaces/efl_gfx_shape.c
+src/lib/efl/interfaces/efl_io_positioner.c
+src/lib/efl/interfaces/efl_observer.c
+src/lib/efl/interfaces/efl_gfx_path.c
+src/lib/eio/eio_monitor.c
+src/lib/eio/efl_io_model.c
+src/lib/eio/eio_file.c
+src/lib/eio/eio_main.c
+src/lib/eio/eio_monitor_win32.c
+src/lib/eio/efl_io_manager.c
+src/lib/eio/eio_eet.c
+src/lib/eio/eio_dir.c
+src/lib/eio/eio_single.c
+src/lib/eio/eio_monitor_poll.c
+src/lib/eio/eio_sentry.c
+src/lib/eio/eio_monitor_inotify.c
+src/lib/eio/eio_monitor_cocoa.c
+src/lib/eio/eio_map.c
+src/lib/eio/eio_xattr.c
+src/lib/eio/eio_monitor_kevent.c
+src/lib/ecore_imf/ecore_imf_module.c
+src/lib/ecore_imf/ecore_imf.c
+src/lib/ecore_imf/ecore_imf_context.c
+src/lib/embryo/embryo_float.c
+src/lib/embryo/embryo_str.c
+src/lib/embryo/embryo_rand.c
+src/lib/embryo/embryo_main.c
+src/lib/embryo/embryo_amx.c
+src/lib/embryo/embryo_time.c
+src/lib/embryo/embryo_args.c
+src/lib/ecore_input/ecore_input_compose.c
+src/lib/ecore_input/ecore_input_joystick.c
+src/lib/ecore_input/ecore_input.c
+src/lib/emile/emile_main.c
+src/lib/emile/emile_base64.c
+src/lib/emile/emile_cipher.c
+src/lib/emile/emile_compress.c
+src/lib/emile/emile_cipher_openssl.c
+src/lib/emile/emile_image.c
+src/lib/emile/emile_cipher_gnutls.c
+src/lib/ecore_x/ecore_x_dnd.c
+src/lib/ecore_x/ecore_x_dpms.c
+src/lib/ecore_x/ecore_x_e.c
+src/lib/ecore_x/ecore_x.c
+src/lib/ecore_x/ecore_x_xinerama.c
+src/lib/ecore_x/ecore_x_sync.c
+src/lib/ecore_x/ecore_x_xi2.c
+src/lib/ecore_x/ecore_x_mwm.c
+src/lib/ecore_x/ecore_x_image.c
+src/lib/ecore_x/ecore_x_selection.c
+src/lib/ecore_x/ecore_x_test.c
+src/lib/ecore_x/ecore_x_events.c
+src/lib/ecore_x/ecore_x_composite.c
+src/lib/ecore_x/ecore_x_randr.c
+src/lib/ecore_x/ecore_x_region.c
+src/lib/ecore_x/ecore_x_error.c
+src/lib/ecore_x/ecore_x_fixes.c
+src/lib/ecore_x/ecore_x_gesture.c
+src/lib/ecore_x/ecore_x_atoms.c
+src/lib/ecore_x/ecore_x_keygrab.c
+src/lib/ecore_x/ecore_x_damage.c
+src/lib/ecore_x/ecore_x_gc.c
+src/lib/ecore_x/ecore_x_cursor.c
+src/lib/ecore_x/ecore_x_drawable.c
+src/lib/ecore_x/ecore_x_window.c
+src/lib/ecore_x/ecore_x_vsync.c
+src/lib/ecore_x/ecore_x_icccm.c
+src/lib/ecore_x/ecore_x_screensaver.c
+src/lib/ecore_x/ecore_x_pixmap.c
+src/lib/ecore_x/ecore_x_present.c
+src/lib/ecore_x/ecore_x_window_shape.c
+src/lib/ecore_x/ecore_x_window_prop.c
+src/lib/ecore_x/ecore_x_netwm.c
+src/lib/ecore_win32/ecore_win32_cursor.c
+src/lib/ecore_win32/ecore_win32_monitor.c
+src/lib/ecore_win32/ecore_win32_window.c
+src/lib/ecore_win32/ecore_win32.c
+src/lib/ecore_win32/ecore_win32_dnd.c
+src/lib/ecore_win32/ecore_win32_event.c
+src/lib/ecore_win32/ecore_win32_clipboard.c
+src/lib/ecore_wl2/ecore_wl2_dnd.c
+src/lib/ecore_wl2/ecore_wl2_window.c
+src/lib/ecore_wl2/ecore_wl2.c
+src/lib/ecore_wl2/ecore_wl2_output.c
+src/lib/ecore_wl2/ecore_wl2_surface.c
+src/lib/ecore_wl2/ecore_wl2_display.c
+src/lib/ecore_wl2/ecore_wl2_buffer.c
+src/lib/ecore_wl2/ecore_wl2_input.c
+src/lib/ecore_wl2/ecore_wl2_subsurf.c
+src/lib/ecore_wayland/xdg-shell-protocol.c
+src/lib/ecore_wayland/ecore_wl_input.c
+src/lib/ecore_wayland/ecore_wl_window.c
+src/lib/ecore_wayland/subsurface-protocol.c
+src/lib/ecore_wayland/ecore_wl_dnd.c
+src/lib/ecore_wayland/ecore_wl_output.c
+src/lib/ecore_wayland/session-recovery-protocol.c
+src/lib/ecore_wayland/ecore_wl.c
+src/lib/ecore_wayland/ecore_wl_subsurf.c
+src/lib/ecore_wayland/ivi-application-protocol.c
+src/lib/eldbus/eldbus_model_object.c
+src/lib/eldbus/eldbus_freedesktop.c
+src/lib/eldbus/eldbus_model_connection.c
+src/lib/eldbus/eldbus_introspection.c
+src/lib/eldbus/eldbus_model_signal.c
+src/lib/eldbus/eldbus_model_proxy.c
+src/lib/eldbus/eldbus_signal_handler.c
+src/lib/eldbus/eldbus_message.c
+src/lib/eldbus/eldbus_message_from_eina_value.c
+src/lib/eldbus/eldbus_core.c
+src/lib/eldbus/eldbus_model_method.c
+src/lib/eldbus/eldbus_message_to_eina_value.c
+src/lib/eldbus/eldbus_object.c
+src/lib/eldbus/eldbus_message_helper.c
+src/lib/eldbus/eldbus_pending.c
+src/lib/eldbus/eldbus_model.c
+src/lib/eldbus/eldbus_proxy.c
+src/lib/eldbus/eldbus_model_arguments.c
+src/lib/eldbus/eldbus_service.c
+src/lib/ecore_evas/ecore_evas_ews.c
+src/lib/ecore_evas/ecore_evas_util.c
+src/lib/ecore_evas/ecore_evas_buffer.c
+src/lib/ecore_evas/ecore_evas.c
+src/lib/ecore_evas/ecore_evas_deprecated.c
+src/lib/ecore_evas/ecore_evas_extn.c
+src/lib/ecore_evas/ecore_evas_module.c
+src/lib/ecore_evas/ecore_evas_fallback_selection.c
+src/generic/evas/common/shmfile.c
+src/generic/evas/common/timeout.c
+src/generic/evas/rsvg/main.c
+src/generic/evas/gst/main.c
+src/generic/evas/raw/main.c
+src/generic/evas/xcf/main.c
+src/generic/evas/xcf/pixelfuncs.c
+src/generic/evas/ps/main.c
+src/bin/exactness/exactness.c
+src/bin/exactness/common.c
+src/bin/exactness/recorder.c
+src/bin/exactness/injector.c
+src/bin/exactness/inspect.c
+src/bin/exactness/player.c
+src/bin/ecore_con/efl_net_proxy_helper.c
+src/bin/edje/edje_data_convert.c
+src/bin/edje/edje_cc_handlers.c
+src/bin/edje/edje_cc_parse.c
+src/bin/edje/edje_inspector.c
+src/bin/edje/edje_cc_script.c
+src/bin/edje/edje_player.c
+src/bin/edje/edje_multisense_convert.c
+src/bin/edje/edje_decc.c
+src/bin/edje/edje_codegen.c
+src/bin/edje/edje_external_inspector.c
+src/bin/edje/edje_cc.c
+src/bin/edje/edje_pick.c
+src/bin/edje/edje_convert_main.c
+src/bin/edje/edje_watch.c
+src/bin/edje/edje_cc_out.c
+src/bin/edje/edje_convert.c
+src/bin/edje/epp/cpperror.c
+src/bin/edje/epp/cpphash.c
+src/bin/edje/epp/cppalloc.c
+src/bin/edje/epp/cppmain.c
+src/bin/edje/epp/cppexp.c
+src/bin/edje/epp/cpplib.c
+src/bin/edje/edje_cc_sources.c
+src/bin/edje/edje_cc_mem.c
+src/bin/eolian/main.c
+src/bin/eolian/sources.c
+src/bin/eolian/docs.c
+src/bin/eolian/headers.c
+src/bin/eolian/types.c
+src/bin/eet/eet_main.c
+src/bin/efreet/efreet_mime_cache_create.c
+src/bin/efreet/efreet_icon_cache_create.c
+src/bin/efreet/efreetd_ipc.c
+src/bin/efreet/efreet_desktop_cache_create.c
+src/bin/efreet/efreetd_cache.c
+src/bin/efreet/efreetd.c
+src/bin/elementary/test_win_wm_rotation.c
+src/bin/elementary/test_calendar.c
+src/bin/elementary/test_efl_anim_group_sequential.c
+src/bin/elementary/test_efl_anim_start_delay.c
+src/bin/elementary/test_ctxpopup.c
+src/bin/elementary/test_genlist.c
+src/bin/elementary/test_part_bg.c
+src/bin/elementary/test_image.c
+src/bin/elementary/test_conform.c
+src/bin/elementary/test_ui_stack.c
+src/bin/elementary/test_efl_anim_translate.c
+src/bin/elementary/test_events.c
+src/bin/elementary/perf_test_02.c
+src/bin/elementary/test_glview.c
+src/bin/elementary/test_flip.c
+src/bin/elementary/test_ui_slider_interval.c
+src/bin/elementary/test_fileselector_button.c
+src/bin/elementary/test_scaling.c
+src/bin/elementary/test_fileselector.c
+src/bin/elementary/test_win_socket.c
+src/bin/elementary/test_access.c
+src/bin/elementary/test_dnd.c
+src/bin/elementary/test_ui_collection_view.c
+src/bin/elementary/test_config.c
+src/bin/elementary/test_focus_policy.c
+src/bin/elementary/test_ui_scroller.c
+src/bin/elementary/test_ui_datepicker.c
+src/bin/elementary/test_separator.c
+src/bin/elementary/test_ui_collection.c
+src/bin/elementary/test_gfx_filters.c
+src/bin/elementary/test_evas_map.c
+src/bin/elementary/elm_prefs_cc_out.c
+src/bin/elementary/test_win_modal.c
+src/bin/elementary/test_focus_style.c
+src/bin/elementary/test_ui_panel.c
+src/bin/elementary/test_efl_anim_rotate.c
+src/bin/elementary/test_multibuttonentry.c
+src/bin/elementary/test_entry_anchor.c
+src/bin/elementary/test_efl_gfx_mapping.c
+src/bin/elementary/test_efl_anim_repeat.c
+src/bin/elementary/test_icon_animated.c
+src/bin/elementary/test_3d.c
+src/bin/elementary/test_evas_snapshot.c
+src/bin/elementary/test_diskselector.c
+src/bin/elementary/test_ui_pager.c
+src/bin/elementary/test_button.c
+src/bin/elementary/test_efl_anim_interpolator.c
+src/bin/elementary/config.c
+src/bin/elementary/test_eio.c
+src/bin/elementary/test_weather.c
+src/bin/elementary/test_ui_clock.c
+src/bin/elementary/test_notify.c
+src/bin/elementary/test_ui_panes.c
+src/bin/elementary/test_ui_textpath.c
+src/bin/elementary/test_transit_bezier.c
+src/bin/elementary/test_segment_control.c
+src/bin/elementary/test_entry_anchor2.c
+src/bin/elementary/test_photo.c
+src/bin/elementary/perf_test_05.c
+src/bin/elementary/test_spinner.c
+src/bin/elementary/test_web.c
+src/bin/elementary/test_disable.c
+src/bin/elementary/test_prefs.c
+src/bin/elementary/test_ui_tab_pager.c
+src/bin/elementary/test_canvas_textblock.c
+src/bin/elementary/test_anim.c
+src/bin/elementary/test_ui_table.c
+src/bin/elementary/test_ui_spotlight.c
+src/bin/elementary/test_efl_anim_alpha.c
+src/bin/elementary/test_map.c
+src/bin/elementary/test_efl_ui_vg_animation.c
+src/bin/elementary/test_flipselector.c
+src/bin/elementary/test_icon_desktops.c
+src/bin/elementary/perf_test_06.c
+src/bin/elementary/test_ui_image.c
+src/bin/elementary/test_actionslider.c
+src/bin/elementary/test_win_plug.c
+src/bin/elementary/test_ui_table_static.c
+src/bin/elementary/test_win_dialog.c
+src/bin/elementary/test_panes.c
+src/bin/elementary/test_bubble.c
+src/bin/elementary/test_cnp.c
+src/bin/elementary/test_ui_tags.c
+src/bin/elementary/test_gengrid.c
+src/bin/elementary/test_box.c
+src/bin/elementary/test_evas_mask.c
+src/bin/elementary/test_win_indicator.c
+src/bin/elementary/test_ui_progressbar.c
+src/bin/elementary/test_sys_notify.c
+src/bin/elementary/elementary_codegen.c
+src/bin/elementary/test_ui_frame.c
+src/bin/elementary/test_transit.c
+src/bin/elementary/test_hoversel.c
+src/bin/elementary/test_gesture_framework.c
+src/bin/elementary/test_tooltip.c
+src/bin/elementary/perf_test_04.c
+src/bin/elementary/test_explode.c
+src/bin/elementary/test_toolbar.c
+src/bin/elementary/test_bg.c
+src/bin/elementary/test_ui_relative_container.c
+src/bin/elementary/test_clock.c
+src/bin/elementary/test_entry.c
+src/bin/elementary/test_ui_separator.c
+src/bin/elementary/test_efl_anim_pause.c
+src/bin/elementary/perf_test_03.c
+src/bin/elementary/test_flip_page.c
+src/bin/elementary/test_win_state.c
+src/bin/elementary/test_systray.c
+src/bin/elementary/quicklaunch.c
+src/bin/elementary/test_dayselector.c
+src/bin/elementary/test.c
+src/bin/elementary/test_factory.c
+src/bin/elementary/perf_test_01.c
+src/bin/elementary/test_gesture_layer2.c
+src/bin/elementary/test_cursor.c
+src/bin/elementary/test_progressbar.c
+src/bin/elementary/test_efl_anim_group_parallel.c
+src/bin/elementary/test_index.c
+src/bin/elementary/test_ui_popup.c
+src/bin/elementary/test_photocam.c
+src/bin/elementary/elm_prefs_cc_mem.c
+src/bin/elementary/test_naviframe.c
+src/bin/elementary/test_grid.c
+src/bin/elementary/test_main_menu.c
+src/bin/elementary/perf_rnd.c
+src/bin/elementary/test_check.c
+src/bin/elementary/test_popup.c
+src/bin/elementary/test_ui_spin.c
+src/bin/elementary/test_inwin.c
+src/bin/elementary/test_ui_slider.c
+src/bin/elementary/test_flip_page_eo.c
+src/bin/elementary/test_slideshow.c
+src/bin/elementary/test_ui_spin_button.c
+src/bin/elementary/test_label.c
+src/bin/elementary/test_colorclass.c
+src/bin/elementary/test_table.c
+src/bin/elementary/test_focus_custom_chain.c
+src/bin/elementary/test_code.c
+src/bin/elementary/test_datetime.c
+src/bin/elementary/test_glview_manygears.c
+src/bin/elementary/test_glview_simple.c
+src/bin/elementary/test_ui_timepicker.c
+src/bin/elementary/test_icon.c
+src/bin/elementary/test_conform_indicator.c
+src/bin/elementary/test_win_stack.c
+src/bin/elementary/test_colorselector.c
+src/bin/elementary/test_panel.c
+src/bin/elementary/elm_prefs_cc_handlers.c
+src/bin/elementary/test_launcher.c
+src/bin/elementary/test_thumb.c
+src/bin/elementary/test_list.c
+src/bin/elementary/test_efl_anim_scale.c
+src/bin/elementary/test_ui_pager_scroll.c
+src/bin/elementary/test_win_inline.c
+src/bin/elementary/test_radio.c
+src/bin/elementary/test_part_shadow.c
+src/bin/elementary/test_floating.c
+src/bin/elementary/test_ui_items.c
+src/bin/elementary/test_hover.c
+src/bin/elementary/test_gesture_layer3.c
+src/bin/elementary/test_fileselector_entry.c
+src/bin/elementary/elm_prefs_cc_parse.c
+src/bin/elementary/test_store.c
+src/bin/elementary/test_multi.c
+src/bin/elementary/test_naviframe_complex.c
+src/bin/elementary/run.c
+src/bin/elementary/test_scroller.c
+src/bin/elementary/test_focus.c
+src/bin/elementary/test_gesture_layer.c
+src/bin/elementary/test_win_keygrab.c
+src/bin/elementary/test_slider.c
+src/bin/elementary/test_layout.c
+src/bin/elementary/perf.c
+src/bin/elementary/test_menu.c
+src/bin/elementary/test_ui_radio.c
+src/bin/elementary/test_ui_button.c
+src/bin/elementary/elm_prefs_cc.c
+src/bin/elementary/test_efl_gfx_vg_value_provider.c
+src/bin/elementary/test_combobox.c
+src/bin/elementary/test_ui_box.c
+src/bin/elementary/test_external.c
+src/bin/elementary/perf_list.c
+src/bin/elementary/test_video.c
+src/bin/elementary/test_ui_box_stack.c
+src/bin/elementary/test_efl_ui_text.c
+src/bin/ecore_buffer/bq_mgr.c
+src/bin/ecore_buffer/bq_mgr_protocol.c
+src/bin/eeze/eeze_sensor_test/eeze_sensor_test.c
+src/bin/eeze/eeze_umount/eeze_umount.c
+src/bin/eeze/eeze_udev_test/eeze_udev_test.c
+src/bin/eeze/eeze_mount/eeze_mount.c
+src/bin/eeze/eeze_scanner/eeze_scanner.c
+src/bin/eeze/eeze_scanner_monitor/eeze_scanner_monitor.c
+src/bin/eeze/eeze_disk_ls/eeze_disk_ls.c
+src/bin/ethumb_client/ethumbd_slave.c
+src/bin/ethumb_client/ethumbd_client.c
+src/bin/ethumb_client/ethumbd.c
+src/bin/elua/main.c
+src/bin/ethumb/ethumb.c
+src/bin/eina/eina_btlog/eina_btlog.c
+src/bin/eina/eina_modinfo/eina_modinfo.c
+src/bin/efl_canvas_wl/efl_canvas_wl_test.c
+src/bin/efl_canvas_wl/efl_canvas_wl_test_stack.c
+src/bin/efl/efl_debugd.c
+src/bin/efl/efl_debug.c
+src/bin/embryo/embryo_cc_sclist.c
+src/bin/embryo/embryo_cc_sc6.c
+src/bin/embryo/embryo_cc_sc3.c
+src/bin/embryo/embryo_cc_sc1.c
+src/bin/embryo/embryo_cc_scexpand.c
+src/bin/embryo/embryo_cc_sc5.c
+src/bin/embryo/embryo_cc_sc2.c
+src/bin/embryo/embryo_cc_sc7.c
+src/bin/embryo/embryo_cc_sc4.c
+src/bin/embryo/embryo_cc_prefix.c
+src/bin/embryo/embryo_cc_scvars.c
+src/bin/eldbus/dbus.c
+src/bin/eldbus/source_client.c
+src/bin/eldbus/parser.c
+src/bin/eldbus/utils.c
+src/bin/eldbus/client.c
+src/bin/ecore_evas/eetpack.c
+src/bin/ecore_evas/ecore_evas_convert.c
+src/benchmarks/eo/eo_bench_callbacks.c
+src/benchmarks/eo/eo_bench_eo_do.c
+src/benchmarks/eo/eo_bench.c
+src/benchmarks/eo/eo_bench_eo_add.c
+src/benchmarks/eo/class_simple.c
+src/benchmarks/evas/evas_bench.c
+src/benchmarks/evas/evas_bench_saver.c
+src/benchmarks/evas/evas_bench_loader.c
+src/benchmarks/elementary/collection.c
+src/benchmarks/elementary/focus_widget_tree.c
+src/benchmarks/eina/eina_bench_convert.c
+src/benchmarks/eina/eina_bench_mempool.c
+src/benchmarks/eina/eina_bench_stringshare.c
+src/benchmarks/eina/eina_bench_crc_hash.c
+src/benchmarks/eina/evas_object_list.c
+src/benchmarks/eina/eina_bench.c
+src/benchmarks/eina/evas_hash.c
+src/benchmarks/eina/eina_bench_rectangle_pool.c
+src/benchmarks/eina/eina_bench_quad.c
+src/benchmarks/eina/evas_mempool.c
+src/benchmarks/eina/eina_bench_array.c
+src/benchmarks/eina/eina_bench_sort.c
+src/benchmarks/eina/ecore_list.c
+src/benchmarks/eina/evas_stringshare.c
+src/benchmarks/eina/ecore_sheap.c
+src/benchmarks/eina/evas_list.c
index a085401..e959eb5 100644 (file)
@@ -299,76 +299,6 @@ EAPI int               ecore_dlist_free_cb_set(Ecore_DList *dlist,
                                                Ecore_Free_Cb free_func);
 
 
-
-/*
- * Hash Table Implementation:
- *
- * Traditional hash table implementation. I had tried a list of tables
- * approach to save on the realloc's but it ended up being much slower than
- * the traditional approach.
- */
-
-typedef struct _ecore_hash_node Ecore_Hash_Node;
-# define ECORE_HASH_NODE(hash) ((Ecore_Hash_Node *)hash)
-
-struct _ecore_hash_node
-{
-   Ecore_Hash_Node *next; /* Pointer to the next node in the bucket list */
-   void *key; /* The key for the data node */
-   void *value; /* The value associated with this node */
-};
-
-typedef struct _ecore_hash Ecore_Hash;
-# define ECORE_HASH(hash) ((Ecore_Hash *)hash)
-
-struct _ecore_hash
-{
-   Ecore_Hash_Node **buckets;
-   int size; /* An index into the table of primes to
-                determine size */
-   int nodes; /* The number of nodes currently in the hash */
-
-   int index; /* The current index into the bucket table */
-
-   Ecore_Compare_Cb compare; /* The function used to compare node values */
-   Ecore_Hash_Cb hash_func; /* The callback function to determine hash */
-
-   Ecore_Free_Cb free_key; /* The callback function to free key */
-   Ecore_Free_Cb free_value; /* The callback function to free value */
-};
-
-/* Create and initialize a hash */
-EAPI Ecore_Hash *ecore_hash_new(Ecore_Hash_Cb hash_func,
-                                Ecore_Compare_Cb compare);
-EAPI int         ecore_hash_init(Ecore_Hash *hash,
-                                 Ecore_Hash_Cb hash_func,
-                                 Ecore_Compare_Cb compare);
-
-/* Functions related to freeing the data in the hash table */
-EAPI int         ecore_hash_free_key_cb_set(Ecore_Hash *hash,
-                                            Ecore_Free_Cb function);
-EAPI int         ecore_hash_free_value_cb_set(Ecore_Hash *hash,
-                                              Ecore_Free_Cb function);
-EAPI void        ecore_hash_destroy(Ecore_Hash *hash);
-
-EAPI int         ecore_hash_count(Ecore_Hash *hash);
-EAPI int         ecore_hash_for_each_node(Ecore_Hash *hash,
-                                          Ecore_For_Each for_each_func,
-                                          void *user_data);
-EAPI Ecore_List *ecore_hash_keys(Ecore_Hash *hash);
-
-/* Retrieve and store data into the hash */
-EAPI void *      ecore_hash_get(Ecore_Hash *hash, const void *key);
-EAPI int         ecore_hash_set(Ecore_Hash *hash, void *key, void *value);
-EAPI int         ecore_hash_hash_set(Ecore_Hash *hash, Ecore_Hash *set);
-EAPI void *      ecore_hash_remove(Ecore_Hash *hash, const void *key);
-EAPI void *      ecore_hash_find(Ecore_Hash *hash,
-                                 Ecore_Compare_Cb compare,
-                                 const void *value);
-EAPI void        ecore_hash_dump_graph(Ecore_Hash *hash);
-EAPI void        ecore_hash_dump_stats(Ecore_Hash *hash);
-
-
 typedef struct _ecore_heap Ecore_Sheap;
 # define ECORE_HEAP(heap) ((Ecore_Sheap *)heap)
 
@@ -415,11 +345,6 @@ struct _ecore_string
    int references;
 };
 
-EAPI int         ecore_string_init();
-EAPI int         ecore_string_shutdown();
-EAPI const char *ecore_string_instance(const char *string);
-EAPI void        ecore_string_release(const char *string);
-
 typedef struct _Ecore_Tree_Node Ecore_Tree_Node;
 # define ECORE_TREE_NODE(object) ((Ecore_Tree_Node *)object)
 struct _Ecore_Tree_Node
diff --git a/src/benchmarks/eina/ecore_hash.c b/src/benchmarks/eina/ecore_hash.c
deleted file mode 100644 (file)
index 24ff219..0000000
+++ /dev/null
@@ -1,952 +0,0 @@
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-
-#include "Ecore_Data.h"
-
-#define PRIME_TABLE_MAX 21
-#define PRIME_MIN 17
-#define PRIME_MAX 16777213
-
-#define ECORE_HASH_CHAIN_MAX 3
-
-#define ECORE_COMPUTE_HASH(hash, key) hash->hash_func(key) % \
-   ecore_prime_table[hash->size];
-
-#define ECORE_HASH_INCREASE(hash) ((hash && ecore_prime_table[hash->size] < \
-                                    PRIME_MAX) ? \
-                                   (hash->nodes / \
-                                    ecore_prime_table[hash->size]) > \
-                                   ECORE_HASH_CHAIN_MAX : FALSE)
-#define ECORE_HASH_REDUCE(hash) ((hash && ecore_prime_table[hash->size] > \
-                                  PRIME_MIN) ? \
-                                 (double)hash->nodes / \
-                                 (double)ecore_prime_table[hash->size - 1] \
-                                 < ((double)ECORE_HASH_CHAIN_MAX * \
-                                    0.375) : FALSE)
-
-
-static const unsigned int ecore_prime_table[] =
-{
-   17, 31, 61, 127, 257, 509, 1021,
-   2053, 4093, 8191, 16381, 32771, 65537, 131071, 262147, 524287, 1048573,
-   2097143, 4194301, 8388617, 16777213
-};
-
-
-/* Private hash manipulation functions */
-static int                     _ecore_hash_node_add(Ecore_Hash *hash,
-                                                    Ecore_Hash_Node *node);
-static Ecore_Hash_Node *       _ecore_hash_node_get(Ecore_Hash *hash,
-                                                    const void *key);
-static int                     _ecore_hash_increase(Ecore_Hash *hash);
-static int                     _ecore_hash_decrease(Ecore_Hash *hash);
-static inline int              _ecore_hash_rehash(Ecore_Hash *hash,
-                                                  Ecore_Hash_Node **old_table,
-                                                  int old_size);
-static int                     _ecore_hash_bucket_destroy(Ecore_Hash_Node *list,
-                                                          Ecore_Free_Cb keyd,
-                                                          Ecore_Free_Cb valued);
-static inline Ecore_Hash_Node *_ecore_hash_bucket_get(Ecore_Hash *hash,
-                                                      Ecore_Hash_Node *bucket,
-                                                      const void *key);
-
-static Ecore_Hash_Node *       _ecore_hash_node_new(void *key, void *value);
-static int                     _ecore_hash_node_init(Ecore_Hash_Node *node,
-                                                     void *key,
-                                                     void *value);
-static int                     _ecore_hash_node_destroy(Ecore_Hash_Node *node,
-                                                        Ecore_Free_Cb keyd,
-                                                        Ecore_Free_Cb valued);
-
-/**
- * @defgroup Ecore_Data_Hash_ADT_Creation_Group Hash Creation Functions
- *
- * Functions that create hash tables.
- */
-
-/**
- * Creates and initializes a new hash
- * @param hash_func The function for determining hash position.
- * @param compare   The function for comparing node keys.
- * @return @c NULL on error, a new hash on success.
- * @ingroup Ecore_Data_Hash_ADT_Creation_Group
- */
-EAPI Ecore_Hash *
-ecore_hash_new(Ecore_Hash_Cb hash_func, Ecore_Compare_Cb compare)
-{
-   Ecore_Hash *new_hash = (Ecore_Hash *)malloc(sizeof(Ecore_Hash));
-   if (!new_hash)
-      return NULL;
-
-   if (!ecore_hash_init(new_hash, hash_func, compare))
-     {
-        FREE(new_hash);
-        return NULL;
-     }
-
-   return new_hash;
-}
-
-/**
- * Initializes the given hash.
- * @param   hash       The given hash.
- * @param   hash_func  The function used for hashing node keys.
- * @param   compare    The function used for comparing node keys.
- * @return  @c TRUE on success, @c FALSE on an error.
- * @ingroup Ecore_Data_Hash_ADT_Creation_Group
- */
-EAPI int
-ecore_hash_init(Ecore_Hash *hash,
-                Ecore_Hash_Cb hash_func,
-                Ecore_Compare_Cb compare)
-{
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   memset(hash, 0, sizeof(Ecore_Hash));
-
-   hash->hash_func = hash_func;
-   hash->compare = compare;
-
-   hash->buckets = (Ecore_Hash_Node **)calloc(ecore_prime_table[0],
-                                              sizeof(Ecore_Hash_Node *));
-
-   return TRUE;
-}
-
-/**
- * @defgroup Ecore_Data_Hash_ADT_Destruction_Group Hash Destruction Functions
- *
- * Functions that destroy hash tables and their contents.
- */
-
-/**
- * Sets the function to destroy the keys of the given hash.
- * @param   hash     The given hash.
- * @param   function The function used to free the node keys. NULL is a
- *          valid value and means that no function will be called.
- * @return  @c TRUE on success, @c FALSE on error.
- * @ingroup Ecore_Data_Hash_ADT_Destruction_Group
- */
-EAPI int
-ecore_hash_free_key_cb_set(Ecore_Hash *hash, Ecore_Free_Cb function)
-{
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   hash->free_key = function;
-
-   return TRUE;
-}
-
-/**
- * Sets the function to destroy the values in the given hash.
- * @param   hash     The given hash.
- * @param   function The function that will free the node values. NULL is a
- *          valid value and means that no function will be called.
- * @return  @c TRUE on success, @c FALSE on error
- * @ingroup Ecore_Data_Hash_ADT_Destruction_Group
- */
-EAPI int
-ecore_hash_free_value_cb_set(Ecore_Hash *hash, Ecore_Free_Cb function)
-{
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   hash->free_value = function;
-
-   return TRUE;
-}
-
-/**
- * @defgroup Ecore_Data_Hash_ADT_Data_Group Hash Data Functions
- *
- * Functions that set, access and delete values from the hash tables.
- */
-
-/**
- * Sets a key-value pair in the given hash table.
- * @param   hash    The given hash table.
- * @param   key     The key.
- * @param   value   The value.
- * @return  @c TRUE if successful, @c FALSE if not.
- * @ingroup Ecore_Data_Hash_ADT_Data_Group
- */
-EAPI int
-ecore_hash_set(Ecore_Hash *hash, void *key, void *value)
-{
-   int ret = FALSE;
-   Ecore_Hash_Node *node;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   node = _ecore_hash_node_get(hash, key);
-   if (node)
-     {
-        if (hash->free_key)
-           hash->free_key(key);
-
-        if (node->value && hash->free_value)
-           hash->free_value(node->value);
-
-        node->value = value;
-        ret = TRUE;
-     }
-   else
-     {
-        node = _ecore_hash_node_new(key, value);
-        if (node)
-           ret = _ecore_hash_node_add(hash, node);
-     }
-
-   return ret;
-}
-
-/**
- * Sets all key-value pairs from set in the given hash table.
- * @param   hash    The given hash table.
- * @param   set     The hash table to import.
- * @return  @c TRUE if successful, @c FALSE if not.
- * @ingroup Ecore_Data_Hash_ADT_Data_Group
- */
-EAPI int
-ecore_hash_hash_set(Ecore_Hash *hash, Ecore_Hash *set)
-{
-   unsigned int i;
-   Ecore_Hash_Node *node, *old;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-   CHECK_PARAM_POINTER_RETURN("set",  set,  FALSE);
-
-   for (i = 0; i < ecore_prime_table[set->size]; i++)
-     {
-        /* Hash into a new list to avoid loops of rehashing the same nodes */
-        while ((old = set->buckets[i]))
-          {
-             set->buckets[i] = old->next;
-             old->next = NULL;
-             node = _ecore_hash_node_get(hash, old->key);
-             if (node)
-               {
-                  /* This key already exists. Delete the old and add the new
-                   * value */
-                  if (hash->free_key)
-                     hash->free_key(node->key);
-
-                  if (hash->free_value)
-                     hash->free_value(node->value);
-
-                  node->key = old->key;
-                  node->value = old->value;
-                  free(old);
-               }
-             else
-                _ecore_hash_node_add(hash, old);
-          }
-     }
-   FREE(set->buckets);
-   ecore_hash_init(set, set->hash_func, set->compare);
-   return TRUE;
-}
-
-/**
- * @brief Frees the hash table and the data contained inside it.
- * @param   hash: The hash table to destroy.
- * @ingroup Ecore_Data_Hash_ADT_Destruction_Group
- */
-EAPI void
-ecore_hash_destroy(Ecore_Hash *hash)
-{
-   unsigned int i = 0;
-
-   CHECK_PARAM_POINTER("hash", hash);
-
-   if (hash->buckets)
-     {
-        while (i < ecore_prime_table[hash->size])
-          {
-             if (hash->buckets[i])
-               {
-                  Ecore_Hash_Node *bucket;
-
-                  /*
-                   * Remove the bucket list to avoid possible recursion
-                   * on the free callbacks.
-                   */
-                  bucket = hash->buckets[i];
-                  hash->buckets[i] = NULL;
-                  _ecore_hash_bucket_destroy(bucket,
-                                             hash->free_key,
-                                             hash->free_value);
-               }
-
-             i++;
-          }
-
-        FREE(hash->buckets);
-     }
-
-        FREE(hash);
-
-   return;
-}
-
-/**
- * @defgroup Ecore_Data_Hash_ADT_Traverse_Group Hash Traverse Functions
- *
- * Functions that iterate through hash tables.
- */
-
-/**
- * Counts the number of nodes in a hash table.
- * @param   hash The hash table to count current nodes.
- * @return  The number of nodes in the hash.
- * @ingroup Ecore_Data_Hash_ADT_Destruction_Group
- */
-EAPI int
-ecore_hash_count(Ecore_Hash *hash)
-{
-   CHECK_PARAM_POINTER_RETURN("hash", hash, 0);
-
-   return hash->nodes;
-}
-
-/**
- * Runs the @p for_each_func function on each entry in the given hash.
- * @param   hash          The given hash.
- * @param   for_each_func The function that each entry is passed to.
- * @param              user_data                       a pointer passed to calls of for_each_func
- * @return  TRUE on success, FALSE otherwise.
- * @ingroup Ecore_Data_Hash_ADT_Traverse_Group
- */
-EAPI int
-ecore_hash_for_each_node(Ecore_Hash *hash,
-                         Ecore_For_Each for_each_func,
-                         void *user_data)
-{
-   unsigned int i = 0;
-
-   CHECK_PARAM_POINTER_RETURN("hash",          hash,          FALSE);
-   CHECK_PARAM_POINTER_RETURN("for_each_func", for_each_func, FALSE);
-
-   while (i < ecore_prime_table[hash->size])
-     {
-        if (hash->buckets[i])
-          {
-             Ecore_Hash_Node *node;
-
-             for (node = hash->buckets[i]; node; node = node->next)
-               {
-                  for_each_func(node, user_data);
-               }
-          }
-
-        i++;
-     }
-
-   return TRUE;
-}
-
-/**
- * Retrieves an ecore_list of all keys in the given hash.
- * @param   hash          The given hash.
- * @return  new ecore_list on success, NULL otherwise
- * @ingroup Ecore_Data_Hash_ADT_Traverse_Group
- */
-EAPI Ecore_List *
-ecore_hash_keys(Ecore_Hash *hash)
-{
-   unsigned int i = 0;
-   Ecore_List *keys;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, NULL);
-
-   keys = ecore_list_new();
-   while (i < ecore_prime_table[hash->size])
-     {
-        if (hash->buckets[i])
-          {
-             Ecore_Hash_Node *node;
-
-             for (node = hash->buckets[i]; node; node = node->next)
-               {
-                  ecore_list_append(keys, node->key);
-               }
-          }
-
-        i++;
-     }
-   ecore_list_first_goto(keys);
-
-   return keys;
-}
-
-/**
- * Prints the distribution of the given hash table for graphing.
- * @param hash The given hash table.
- */
-EAPI void
-ecore_hash_dump_graph(Ecore_Hash *hash)
-{
-   unsigned int i;
-
-   for (i = 0; i < ecore_prime_table[hash->size]; i++)
-      if (hash->buckets[i])
-        {
-           unsigned int n = 0;
-           Ecore_Hash_Node *node;
-           for (node = hash->buckets[i]; node; node = node->next)
-              n++;
-           printf("%u\t%u", i, n);
-        }
-      else
-           printf("%u\t0",  i);
-
-}
-
-/**
- * Prints the distribution of the given hash table for graphing.
- * @param hash The given hash table.
- */
-EAPI void
-ecore_hash_dump_stats(Ecore_Hash *hash)
-{
-   unsigned int i;
-   double variance, sum_n_2 = 0, sum_n = 0;
-
-   if (!hash->size) return;
-   for (i = 0; i < ecore_prime_table[hash->size]; i++)
-     {
-        if (hash->buckets[i])
-          {
-             int n = 0;
-             Ecore_Hash_Node *node;
-             for (node = hash->buckets[i]; node; node = node->next)
-                n++;
-             sum_n_2 += ((double)n * (double)n);
-             sum_n += (double)n;
-          }
-     }
-   if (i)
-     {
-        variance = (sum_n_2 - ((sum_n * sum_n) / (double)i)) / (double)i;
-        printf("Average length: %f\n\tvariance^2: %f", (sum_n / (double)i),
-               variance);
-     }
-}
-
-static int
-_ecore_hash_bucket_destroy(Ecore_Hash_Node *list,
-                           Ecore_Free_Cb keyd,
-                           Ecore_Free_Cb valued)
-{
-   Ecore_Hash_Node *node;
-
-   CHECK_PARAM_POINTER_RETURN("list", list, FALSE);
-
-   for (node = list; node; node = list)
-     {
-        list = list->next;
-        _ecore_hash_node_destroy(node, keyd, valued);
-     }
-
-   return TRUE;
-}
-
-/*
- * @brief Add the node to the hash table
- * @param hash: the hash table to add the key
- * @param node: the node to add to the hash table
- * @return Returns FALSE on error, TRUE on success
- */
-static int
-_ecore_hash_node_add(Ecore_Hash *hash, Ecore_Hash_Node *node)
-{
-   size_t hash_val;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-   CHECK_PARAM_POINTER_RETURN("node", node, FALSE);
-
-   /* Check to see if the hash needs to be resized */
-   if (ECORE_HASH_INCREASE(hash))
-      _ecore_hash_increase(hash);
-
-   /* Compute the position in the table */
-   if (!hash->hash_func)
-      hash_val = (size_t)node->key % ecore_prime_table[hash->size];
-   else
-      hash_val = ECORE_COMPUTE_HASH(hash, node->key);
-
-   /* Prepend the node to the list at the index position */
-   node->next = hash->buckets[hash_val];
-   hash->buckets[hash_val] = node;
-   hash->nodes++;
-
-   return TRUE;
-}
-
-/**
- * Retrieves the value associated with the given key from the given hash
- * table.
- * @param   hash The given hash table.
- * @param   key  The key to search for.
- * @return  The value corresponding to key on success, @c NULL otherwise.
- * @ingroup Ecore_Data_Hash_ADT_Data_Group
- */
-EAPI void *
-ecore_hash_get(Ecore_Hash *hash, const void *key)
-{
-   void *data;
-   Ecore_Hash_Node *node;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, NULL);
-
-   node = _ecore_hash_node_get(hash, key);
-   if (!node)
-      return NULL;
-
-   data = node->value;
-
-   return data;
-}
-
-/**
- * Removes the value associated with the given key in the given hash
- * table.
- * @param   hash The given hash table.
- * @param   key  The key to search for.
- * @return  The value corresponding to the key on success.  @c NULL is
- *          returned if there is an error.
- * @ingroup Ecore_Data_Hash_ADT_Data_Group
- */
-EAPI void *
-ecore_hash_remove(Ecore_Hash *hash, const void *key)
-{
-   Ecore_Hash_Node *node = NULL;
-   Ecore_Hash_Node *list;
-   size_t hash_val;
-   void *ret = NULL;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, NULL);
-
-   /* Compute the position in the table */
-   if (!hash->hash_func)
-      hash_val = (size_t)key % ecore_prime_table[hash->size];
-   else
-      hash_val = ECORE_COMPUTE_HASH(hash, key);
-
-   /*
-    * If their is a list that could possibly hold the key/value pair
-    * traverse it and remove the hash node.
-    */
-   if (hash->buckets[hash_val])
-     {
-        list = hash->buckets[hash_val];
-
-        /*
-         * Traverse the list to find the specified key
-         */
-        node = list;
-        if (hash->compare)
-           while ((node) && (hash->compare(node->key, key) != 0))
-             {
-                list = node;
-                node = node->next;
-             }
-        else
-           while ((node) && (node->key != key))
-             {
-                list = node;
-                node = node->next;
-             }
-
-        /*
-         * Remove the node with the matching key and free it's memory
-         */
-        if (node)
-          {
-             if (list == node)
-                hash->buckets[hash_val] = node->next;
-             else
-                list->next = node->next;
-
-             ret = node->value;
-             node->value = NULL;
-             _ecore_hash_node_destroy(node, hash->free_key, NULL);
-             hash->nodes--;
-          }
-     }
-
-   if (ECORE_HASH_REDUCE(hash))
-      _ecore_hash_decrease(hash);
-
-   return ret;
-}
-
-/**
- * Retrieves the first value that matches
- * table.
- * @param   hash The given hash table.
- * @param   key  The key to search for.
- * @return  The value corresponding to key on success, @c NULL otherwise.
- * @ingroup Ecore_Data_Hash_ADT_Data_Group
- */
-EAPI void *
-ecore_hash_find(Ecore_Hash *hash, Ecore_Compare_Cb compare, const void *value)
-{
-   unsigned int i = 0;
-
-   CHECK_PARAM_POINTER_RETURN("hash",    hash,    NULL);
-   CHECK_PARAM_POINTER_RETURN("compare", compare, NULL);
-   CHECK_PARAM_POINTER_RETURN("value",   value,   NULL);
-
-   while (i < ecore_prime_table[hash->size])
-     {
-        if (hash->buckets[i])
-          {
-             Ecore_Hash_Node *node;
-
-             for (node = hash->buckets[i]; node; node = node->next)
-               {
-                  if (!compare(node->value, value))
-                     return node->value;
-               }
-          }
-
-        i++;
-     }
-
-   return NULL;
-}
-
-/*
- * @brief Retrieve the node associated with key
- * @param hash: the hash table to search for the key
- * @param key: the key to search for in the hash table
- * @return Returns NULL on error, node corresponding to key on success
- */
-static Ecore_Hash_Node *
-_ecore_hash_node_get(Ecore_Hash *hash, const void *key)
-{
-   size_t hash_val;
-   Ecore_Hash_Node *node = NULL;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, NULL);
-
-   if (!hash->buckets)
-      return NULL;
-
-   /* Compute the position in the table */
-   if (!hash->hash_func)
-      hash_val = (size_t)key % ecore_prime_table[hash->size];
-   else
-      hash_val = ECORE_COMPUTE_HASH(hash, key);
-
-   /* Grab the bucket at the specified position */
-   if (hash->buckets[hash_val])
-     {
-        node = _ecore_hash_bucket_get(hash, hash->buckets[hash_val], key);
-        /*
-         * Move matched node to the front of the list as it's likely
-         * to be searched for again soon.
-         */
-        if (node && node != hash->buckets[hash_val])
-          {
-             node->next = hash->buckets[hash_val];
-             hash->buckets[hash_val] = node;
-          }
-     }
-
-   return node;
-}
-
-/*
- * @brief Search the hash bucket for a specified key
- * @param hash: the hash table to retrieve the comparison function
- * @param bucket: the list to search for the key
- * @param key: the key to search for in the list
- * @return Returns NULL on error or not found, the found node on success
- */
-static inline Ecore_Hash_Node *
-_ecore_hash_bucket_get(Ecore_Hash *hash,
-                       Ecore_Hash_Node *bucket,
-                       const void *key)
-{
-   Ecore_Hash_Node *prev = NULL;
-   Ecore_Hash_Node *node = NULL;
-
-   /*
-    * Traverse the list to find the desired node, if the node is in the
-    * list, then return the node.
-    */
-   if (hash->compare)
-      for (node = bucket; node; node = node->next)
-        {
-           if (hash->compare(node->key, key) == 0)
-              break;
-
-           prev = node;
-        }
-   else
-      for (node = bucket; node; node = node->next)
-        {
-           if (node->key == key)
-              break;
-
-           prev = node;
-        }
-
-   /*
-    * Remove node from the list to replace it at the beginning.
-    */
-   if (node && prev)
-     {
-        prev->next = node->next;
-        node->next = NULL;
-     }
-
-   return node;
-}
-
-/*
- * @brief Increase the size of the hash table by approx.  2 * current size
- * @param hash: the hash table to increase the size of
- * @return Returns TRUE on success, FALSE on error
- */
-static int
-_ecore_hash_increase(Ecore_Hash *hash)
-{
-   void *old;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   /* Max size reached so return FALSE */
-   if ((ecore_prime_table[hash->size] == PRIME_MAX) ||
-       (hash->size == PRIME_TABLE_MAX))
-      return FALSE;
-
-   /*
-    * Increase the size of the hash and save a pointer to the old data
-    */
-   hash->size++;
-   old = hash->buckets;
-
-   /*
-    * Allocate a new bucket area, of the new larger size
-    */
-   hash->buckets =
-      calloc(ecore_prime_table[hash->size], sizeof(Ecore_Hash_Node *));
-
-   /*
-    * Make sure the allocation succeeded, if not replace the old data and
-    * return a failure.
-    */
-   if (!hash->buckets)
-     {
-        hash->buckets = old;
-        hash->size--;
-        return FALSE;
-     }
-
-   hash->nodes = 0;
-
-   /*
-    * Now move all of the old data into the new bucket area
-    */
-   if (_ecore_hash_rehash(hash, old, hash->size - 1))
-     {
-        FREE(old);
-        return TRUE;
-     }
-
-   /*
-    * Free the old buckets regardless of success.
-    */
-        FREE(old);
-
-   return FALSE;
-}
-
-/*
- * @brief Decrease the size of the hash table by < 1/2 * current size
- * @param hash: the hash table to decrease the size of
- * @return Returns TRUE on success, FALSE on error
- */
-static int
-_ecore_hash_decrease(Ecore_Hash *hash)
-{
-   Ecore_Hash_Node **old;
-
-   CHECK_PARAM_POINTER_RETURN("hash", hash, FALSE);
-
-   if (ecore_prime_table[hash->size] == PRIME_MIN)
-      return FALSE;
-
-   /*
-    * Decrease the hash size and store a pointer to the old data
-    */
-   hash->size--;
-   old = hash->buckets;
-
-   /*
-    * Allocate a new area to store the data
-    */
-   hash->buckets = (Ecore_Hash_Node **)calloc(ecore_prime_table[hash->size],
-                                              sizeof(Ecore_Hash_Node *));
-
-   /*
-    * Make sure allocation succeeded otherwise rreturn to the previous
-    * state
-    */
-   if (!hash->buckets)
-     {
-        hash->buckets = old;
-        hash->size++;
-        return FALSE;
-     }
-
-   hash->nodes = 0;
-
-   if (_ecore_hash_rehash(hash, old, hash->size + 1))
-     {
-        FREE(old);
-        return TRUE;
-     }
-
-   return FALSE;
-}
-
-/*
- * @brief Rehash the nodes of a table into the hash table
- * @param hash: the hash to place the nodes of the table
- * @param table: the table to remove the nodes from and place in hash
- * @return Returns TRUE on success, FALSE on error
- */
-static inline int
-_ecore_hash_rehash(Ecore_Hash *hash, Ecore_Hash_Node **old_table, int old_size)
-{
-   unsigned int i;
-   Ecore_Hash_Node *old;
-
-   CHECK_PARAM_POINTER_RETURN("hash",      hash,      FALSE);
-   CHECK_PARAM_POINTER_RETURN("old_table", old_table, FALSE);
-
-   for (i = 0; i < ecore_prime_table[old_size]; i++)
-     {
-        /* Hash into a new list to avoid loops of rehashing the same nodes */
-        while ((old = old_table[i]))
-          {
-             old_table[i] = old->next;
-             old->next = NULL;
-             _ecore_hash_node_add(hash, old);
-          }
-     }
-
-   return TRUE;
-}
-
-/*
- * @brief Create a new hash node for key and value storage
- * @param key: the key for this node
- * @param value: the value that the key references
- * @return Returns NULL on error, a new hash node on success
- */
-static Ecore_Hash_Node *
-_ecore_hash_node_new(void *key, void *value)
-{
-   Ecore_Hash_Node *node;
-
-   node = (Ecore_Hash_Node *)malloc(sizeof(Ecore_Hash_Node));
-   if (!node)
-      return NULL;
-
-   if (!_ecore_hash_node_init(node, key, value))
-     {
-        FREE(node);
-        return NULL;
-     }
-
-   return node;
-}
-
-/*
- * @brief Initialize a hash node to some sane default values
- * @param node: the node to set the values
- * @param key: the key to reference this node
- * @param value: the value that key refers to
- * @return Returns TRUE on success, FALSE on error
- */
-static int
-_ecore_hash_node_init(Ecore_Hash_Node *node, void *key, void *value)
-{
-      CHECK_PARAM_POINTER_RETURN("node", node, FALSE);
-
-   node->key = key;
-   node->value = value;
-
-   return TRUE;
-}
-
-/*
- * @brief Destroy a node and call the specified callbacks to free data
- * @param node: the node to be destroyed
- * @param keyd: the function to free the key
- * @param valued: the function  to free the value
- * @return Returns TRUE on success, FALSE on error
- */
-static int
-_ecore_hash_node_destroy(Ecore_Hash_Node *node,
-                         Ecore_Free_Cb keyd,
-                         Ecore_Free_Cb valued)
-{
-      CHECK_PARAM_POINTER_RETURN("node", node, FALSE);
-
-   if (keyd)
-      keyd(node->key);
-
-   if (valued)
-      valued(node->value);
-
-   FREE(node);
-
-   return TRUE;
-}
-
-int
-ecore_str_compare(const void *key1, const void *key2)
-{
-   const char *k1, *k2;
-
-   if (!key1 || !key2)
-      return ecore_direct_compare(key1, key2);
-   else if (key1 == key2)
-      return 0;
-
-   k1 = key1;
-   k2 = key2;
-
-   return strcmp(k1, k2);
-}
-
-unsigned int
-ecore_str_hash(const void *key)
-{
-   int i;
-   unsigned int mask;
-   unsigned int value = 0;
-   const char *k = key;
-
-   if (!k)
-      return 0;
-
-   mask = (sizeof(unsigned int) * 8) - 1;
-
-   for (i = 0; k[i] != '\0'; i++)
-     {
-        value ^= ((unsigned int)k[i] << ((i * 5) & mask));
-     }
-
-   return value;
-}
diff --git a/src/benchmarks/eina/ecore_strings.c b/src/benchmarks/eina/ecore_strings.c
deleted file mode 100644 (file)
index e562352..0000000
+++ /dev/null
@@ -1,164 +0,0 @@
-#include <stdlib.h>
-#include <string.h>
-
-#include "Ecore_Data.h"
-
-static void ecore_string_free_cb(void *data);
-
-static Ecore_Hash *ecore_strings = NULL;
-static int ecore_string_init_count = 0;
-
-/**
- * @defgroup Ecore_String_Group String Instance Functions
- *
- * These functions allow you to store one copy of a string, and use it
- * throughout your program.
- *
- * This is a method to reduce the number of duplicated strings kept in
- * memory. It's pretty common for the same strings to be dynamically
- * allocated repeatedly between applications and libraries, especially in
- * circumstances where you could have multiple copies of a structure that
- * allocates the string. So rather than duplicating and freeing these
- * strings, you request a read-only pointer to an existing string and
- * only incur the overhead of a hash lookup.
- *
- * It sounds like micro-optimizing, but profiling has shown this can have
- * a significant impact as you scale the number of copies up. It improves
- * string creation/destruction speed, reduces memory use and decreases
- * memory fragmentation, so a win all-around.
- */
-
-/**
- * Initialize the ecore string internal structure.
- * @return  Zero on failure, non-zero on successful initialization.
- */
-EAPI int
-ecore_string_init(void)
-{
-   /*
-    * No strings have been loaded at this point, so create the hash
-    * table for storing string info for later.
-    */
-   if (!ecore_string_init_count)
-     {
-        ecore_strings = ecore_hash_new(ecore_str_hash, ecore_str_compare);
-        if (!ecore_strings)
-           return 0;
-
-        ecore_hash_free_value_cb_set(ecore_strings, ecore_string_free_cb);
-     }
-
-   ecore_string_init_count++;
-
-   return 1;
-}
-
-/**
- * Retrieves an instance of a string for use in an ecore program.
- * @param   string The string to retrieve an instance of.
- * @return  A pointer to an instance of the string on success.
- *          @c NULL on failure.
- * @ingroup Ecore_String_Group
- */
-EAPI const char *
-ecore_string_instance(const char *string)
-{
-   Ecore_String *str;
-
-   CHECK_PARAM_POINTER_RETURN("string", string, NULL);
-
-   /*
-    * Check for a previous instance of the string, if not found, create
-    * it.
-    */
-   str = ecore_hash_get(ecore_strings, string);
-   if (!str)
-     {
-        int length;
-
-        /*
-         * Allocate and initialize a new string reference.
-         */
-        length = strlen(string) + 1;
-
-        str =
-           (Ecore_String *)malloc(sizeof(Ecore_String) + length * sizeof(char));
-        if (!str) return NULL;
-
-        str->string = (char *)(str + 1);
-        str->references = 0;
-
-        memcpy(str->string, string, length);
-
-        ecore_hash_set(ecore_strings, str->string, str);
-     }
-
-   str->references++;
-
-   return str->string;
-}
-
-/**
- * Notes that the given string has lost an instance.
- *
- * It will free the string if no other instances are left.
- *
- * @param   string The given string.
- * @ingroup Ecore_String_Group
- */
-EAPI void
-ecore_string_release(const char *string)
-{
-   Ecore_String *str;
-
-   CHECK_PARAM_POINTER("string", string);
-
-   str = ecore_hash_get(ecore_strings, (char *)string);
-   if (!str)
-      return;
-
-   str->references--;
-   if (str->references < 1)
-     {
-        ecore_hash_remove(ecore_strings, (char *)string);
-        FREE(str);
-     }
-}
-
-EAPI void
-ecore_string_hash_dump_graph(void)
-{
-   ecore_hash_dump_graph(ecore_strings);
-}
-
-EAPI void
-ecore_string_hash_dump_stats(void)
-{
-   ecore_hash_dump_stats(ecore_strings);
-}
-
-/**
- * Shutdown the ecore string internal structures
- * @return 0 when the module is completely shut down, 1 or
- * greater otherwise.
- */
-EAPI int
-ecore_string_shutdown(void)
-{
-   --ecore_string_init_count;
-   if (!ecore_string_init_count)
-     {
-        ecore_hash_destroy(ecore_strings);
-        ecore_strings = NULL;
-     }
-   return ecore_string_init_count;
-}
-
-static void
-ecore_string_free_cb(void *data)
-{
-   Ecore_String *str;
-
-   str = data;
-   FREE(str);
-}
index 1ca7e51..5d75848 100644 (file)
@@ -36,7 +36,6 @@ struct _Eina_Benchmark_Case
 };
 
 static const Eina_Benchmark_Case etc[] = {
-   { "Hash", eina_bench_hash, EINA_TRUE },
    { "Hash_Short_Key", eina_bench_crc_hash_short, EINA_TRUE },
    { "Hash_Medium_Key", eina_bench_crc_hash_medium, EINA_TRUE },
    { "Hash_Large_key", eina_bench_crc_hash_large, EINA_TRUE },
@@ -129,8 +128,6 @@ main(int argc, char **argv)
          break;
      }
 
-   eina_bench_e17();
-
    eina_shutdown();
 
    _mempool_shutdown();
index 747ac6f..053bbba 100644 (file)
@@ -36,7 +36,4 @@ void eina_bench_rectangle_pool(Eina_Benchmark *bench);
 void eina_bench_quadtree(Eina_Benchmark *bench);
 void eina_bench_promise(Eina_Benchmark *bench);
 
-/* Specific benchmark. */
-void eina_bench_e17(void);
-
 #endif
diff --git a/src/benchmarks/eina/eina_bench_hash.c b/src/benchmarks/eina/eina_bench_hash.c
deleted file mode 100644 (file)
index 9674818..0000000
+++ /dev/null
@@ -1,551 +0,0 @@
-/* EINA - EFL data type library
- * Copyright (C) 2008 Cedric Bail
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library;
- * if not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <string.h>
-#include <time.h>
-
-#ifdef EINA_BENCH_HAVE_GLIB
-# include <glib.h>
-#endif
-
-#include "Evas_Data.h"
-#include "Ecore_Data.h"
-
-#include "eina_hash.h"
-#include "eina_array.h"
-#include "eina_bench.h"
-#include "eina_rbtree.h"
-#include "eina_convert.h"
-
-#ifdef CITYHASH_BENCH
-// Hash function for a byte array.
-uint64_t CityHash64(const char *buf, size_t len);
-
-static int
-city_hash(const char *buf, int len)
-{
-   return (int)CityHash64(buf, len);
-}
-
-static unsigned int
-_eina_string_key_length(const char *key)
-{
-   if (!key)
-      return 0;
-
-   return (int)strlen(key) + 1;
-}
-
-static int
-_eina_string_key_cmp(const char *key1, EINA_UNUSED int key1_length,
-                     const char *key2, EINA_UNUSED int key2_length)
-{
-   return strcmp(key1, key2);
-}
-#endif
-
-
-typedef struct _Eina_Bench_Rbtree Eina_Bench_Rbtree;
-struct _Eina_Bench_Rbtree
-{
-   Eina_Rbtree node;
-   char key[10];
-   int value;
-};
-
-static Eina_Rbtree_Direction
-_eina_bench_rbtree_cmp(const Eina_Bench_Rbtree *left,
-                       const Eina_Bench_Rbtree *right,
-                       EINA_UNUSED void *data)
-{
-   if (!left)
-      return EINA_RBTREE_RIGHT;
-
-   if (!right)
-      return EINA_RBTREE_LEFT;
-
-   return strcmp(left->key,
-                 right->key) < 0 ? EINA_RBTREE_LEFT : EINA_RBTREE_RIGHT;
-}
-
-static inline int
-_eina_bench_rbtree_key(const Eina_Bench_Rbtree *node,
-                       const char *key,
-                       int length,
-                       EINA_UNUSED void *data)
-{
-   return strncmp(node->key, key, length);
-}
-
-static void
-_eina_bench_rbtree_free(Eina_Rbtree *node, EINA_UNUSED void *data)
-{
-   free(node);
-}
-
-static void
-eina_bench_lookup_rbtree(int request)
-{
-   Eina_Rbtree *root = NULL;
-   int i;
-   int j;
-
-   for (i = 0; i < request; ++i)
-     {
-        Eina_Bench_Rbtree *tmp;
-
-        tmp = malloc(sizeof (Eina_Bench_Rbtree));
-        if (!tmp)
-           continue;
-
-        tmp->value = i;
-        eina_convert_itoa(i, tmp->key);
-
-        root = eina_rbtree_inline_insert(root,
-                                         &tmp->node,
-                                         EINA_RBTREE_CMP_NODE_CB(
-                                            _eina_bench_rbtree_cmp),
-                                         NULL);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < request; ++i)
-        {
-           Eina_Rbtree *tmp;
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-
-           tmp = eina_rbtree_inline_lookup(root,
-                                           tmp_key,
-                                           10,
-                                           EINA_RBTREE_CMP_KEY_CB(
-                                              _eina_bench_rbtree_key),
-                                           NULL);
-           /* Suppress warnings as we really don't want to do anything. */
-           (void) tmp;
-        }
-
-   eina_rbtree_delete(root, EINA_RBTREE_FREE_CB(_eina_bench_rbtree_free), NULL);
-}
-
-static void
-eina_bench_lookup_murmur(int request)
-{
-   Eina_Hash *hash = NULL;
-   int *tmp_val;
-   unsigned int i;
-   unsigned int j;
-
-   hash = eina_hash_new(EINA_KEY_LENGTH(_eina_string_key_length),
-                        EINA_KEY_CMP(_eina_string_key_cmp),
-                        EINA_KEY_HASH(eina_hash_murmur3),
-                        free,
-                        8);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        char tmp_key[10];
-
-        tmp_val = malloc(sizeof (int));
-
-        if (!tmp_val)
-           continue;
-
-        eina_convert_itoa(i, tmp_key);
-        *tmp_val = i;
-
-        eina_hash_add(hash, tmp_key, tmp_val);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-           tmp_val = eina_hash_find(hash, tmp_key);
-        }
-
-   eina_hash_free(hash);
-}
-
-#ifdef CITYHASH_BENCH
-static void
-eina_bench_lookup_cityhash(int request)
-{
-   Eina_Hash *hash = NULL;
-   int *tmp_val;
-   unsigned int i;
-   unsigned int j;
-
-   hash = eina_hash_new(EINA_KEY_LENGTH(_eina_string_key_length),
-                        EINA_KEY_CMP(_eina_string_key_cmp),
-                        EINA_KEY_HASH(city_hash),
-                        free,
-                        8);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        char tmp_key[10];
-
-        tmp_val = malloc(sizeof (int));
-
-        if (!tmp_val)
-           continue;
-
-        eina_convert_itoa(i, tmp_key);
-        *tmp_val = i;
-
-        eina_hash_add(hash, tmp_key, tmp_val);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-           tmp_val = eina_hash_find(hash, tmp_key);
-        }
-
-   eina_hash_free(hash);
-}
-#endif
-
-static void
-eina_bench_lookup_superfast(int request)
-{
-   Eina_Hash *hash = NULL;
-   int *tmp_val;
-   unsigned int i;
-   unsigned int j;
-
-   hash = eina_hash_string_superfast_new(free);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        char tmp_key[10];
-
-        tmp_val = malloc(sizeof (int));
-
-        if (!tmp_val)
-           continue;
-
-        eina_convert_itoa(i, tmp_key);
-        *tmp_val = i;
-
-        eina_hash_add(hash, tmp_key, tmp_val);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-           tmp_val = eina_hash_find(hash, tmp_key);
-        }
-
-   eina_hash_free(hash);
-}
-
-static void
-eina_bench_lookup_djb2(int request)
-{
-   Eina_Hash *hash = NULL;
-   int *tmp_val;
-   unsigned int i;
-   unsigned int j;
-
-   hash = eina_hash_string_djb2_new(free);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        char tmp_key[10];
-
-        tmp_val = malloc(sizeof (int));
-
-        if (!tmp_val)
-           continue;
-
-        eina_convert_itoa(i, tmp_key);
-        *tmp_val = i;
-
-        eina_hash_add(hash, tmp_key, tmp_val);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-
-           tmp_val = eina_hash_find(hash, tmp_key);
-        }
-
-   eina_hash_free(hash);
-}
-
-typedef struct _Eina_Bench_DJB2 Eina_Bench_DJB2;
-struct _Eina_Bench_DJB2
-{
-   char *key;
-   int value;
-};
-
-static void
-eina_bench_lookup_djb2_inline(int request)
-{
-   Eina_Hash *hash = NULL;
-   Eina_Bench_DJB2 *elm;
-   unsigned int i;
-   unsigned int j;
-
-   hash = eina_hash_string_djb2_new(free);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        int length;
-
-        elm = malloc(sizeof (Eina_Bench_DJB2) + 10);
-        if (!elm)
-           continue;
-
-        elm->key = (char *)(elm + 1);
-
-        length = eina_convert_itoa(i, elm->key) + 1;
-        elm->value = i;
-
-        eina_hash_direct_add_by_hash(hash, elm->key, length,
-                                     eina_hash_djb2(elm->key, length), elm);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-           int length = eina_convert_itoa(rand() % request, tmp_key) + 1;
-
-           elm =
-              eina_hash_find_by_hash(hash, tmp_key, length,
-                                     eina_hash_djb2(tmp_key, length));
-        }
-
-   eina_hash_free(hash);
-}
-
-#ifdef EINA_BENCH_HAVE_GLIB
-typedef struct _Eina_Bench_Glib Eina_Bench_Glib;
-struct _Eina_Bench_Glib
-{
-   char *key;
-   int value;
-};
-
-static void
-eina_bench_lookup_ghash(int request)
-{
-   Eina_Bench_Glib *elm;
-   GHashTable *hash;
-   unsigned int i;
-   unsigned int j;
-
-   hash = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, free);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        elm = malloc(sizeof (Eina_Bench_Glib) + 10);
-        if (!elm)
-           continue;
-
-        elm->key = (char *)(elm + 1);
-
-        eina_convert_itoa(i, elm->key);
-        elm->value = i;
-
-        g_hash_table_insert(hash, elm->key, elm);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-
-           elm = g_hash_table_lookup(hash, tmp_key);
-        }
-
-   g_hash_table_destroy(hash);
-}
-#endif
-
-static void
-eina_bench_lookup_evas(int request)
-{
-   Evas_Hash *hash = NULL;
-   Eina_Array *array = NULL;
-   int *tmp_val;
-   Eina_Array_Iterator it;
-   unsigned int i;
-   unsigned int j;
-
-   array = eina_array_new(10000);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        char tmp_key[10];
-
-        tmp_val = malloc(sizeof (int));
-
-        if (!tmp_val)
-           continue;
-
-        eina_convert_itoa(i, tmp_key);
-        *tmp_val = i;
-
-        hash = evas_hash_add(hash, tmp_key, tmp_val);
-
-        eina_array_push(array, tmp_val);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-
-           tmp_val = evas_hash_find(hash, tmp_key);
-        }
-
-   evas_hash_free(hash);
-
-   EINA_ARRAY_ITER_NEXT(array, i, tmp_val, it)
-     free(tmp_val);
-
-   eina_array_free(array);
-}
-
-typedef struct _Eina_Bench_Ecore Eina_Bench_Ecore;
-struct _Eina_Bench_Ecore
-{
-   char *key;
-   int value;
-};
-
-static void
-eina_bench_lookup_ecore(int request)
-{
-   Ecore_Hash *hash = NULL;
-   Eina_Bench_Ecore *elm;
-   unsigned int i;
-   unsigned int j;
-
-   hash = ecore_hash_new(ecore_str_hash, ecore_str_compare);
-
-   ecore_hash_free_key_cb_set(hash, NULL);
-   ecore_hash_free_value_cb_set(hash, free);
-
-   for (i = 0; i < (unsigned int)request; ++i)
-     {
-        elm = malloc(sizeof (Eina_Bench_Ecore) + 10);
-        if (!elm)
-           continue;
-
-        elm->key = (char *)(elm + 1);
-        eina_convert_itoa(i, elm->key);
-        elm->value = i;
-
-        ecore_hash_set(hash, elm->key, elm);
-     }
-
-   srand(time(NULL));
-
-   for (j = 0; j < 200; ++j)
-      for (i = 0; i < (unsigned int)request; ++i)
-        {
-           char tmp_key[10];
-
-           eina_convert_itoa(rand() % request, tmp_key);
-
-           elm = ecore_hash_get(hash, tmp_key);
-        }
-
-   ecore_hash_destroy(hash);
-}
-
-void eina_bench_hash(Eina_Benchmark *bench)
-{
-   eina_benchmark_register(bench, "superfast-lookup",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_superfast),   10, 10000, 10);
-   eina_benchmark_register(bench, "djb2-lookup",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_djb2),        10, 10000, 10);
-   eina_benchmark_register(bench, "djb2-lookup-inline",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_djb2_inline), 10, 10000, 10);
-   eina_benchmark_register(bench, "murmur",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_murmur),      10, 10000, 10);
-#ifdef CITYHASH_BENCH
-   eina_benchmark_register(bench, "cityhash",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_cityhash),    10, 10000, 10);
-#endif
-   eina_benchmark_register(bench, "rbtree",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_rbtree),      10, 10000, 10);
-#ifdef EINA_BENCH_HAVE_GLIB
-   eina_benchmark_register(bench, "ghash-lookup",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_ghash),       10, 10000, 10);
-#endif
-   eina_benchmark_register(bench, "evas-lookup",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_evas),        10, 10000, 10);
-   eina_benchmark_register(bench, "ecore-lookup",
-                           EINA_BENCHMARK(
-                              eina_bench_lookup_ecore),       10, 10000, 10);
-
-}
index 22d18fa..1b19154 100644 (file)
@@ -139,14 +139,14 @@ eina_bench_ecore_job(int request)
    unsigned int j;
    int i;
 
-   ecore_string_init();
+   //ecore_string_init();
 
    for (i = 0; i < request; ++i)
      {
         char build[64] = "string_";
 
         eina_convert_xtoa(i, build + 7);
-        tmp = ecore_string_instance(build);
+        //tmp = ecore_string_instance(build);
      }
 
    srand(time(NULL));
@@ -157,13 +157,13 @@ eina_bench_ecore_job(int request)
            char build[64] = "string_";
 
            eina_convert_xtoa(rand() % request, build + 7);
-           tmp = ecore_string_instance(build);
+           //tmp = ecore_string_instance(build);
         }
 
    /* Suppress warnings as we really don't want to do anything. */
    (void) tmp;
 
-   ecore_string_shutdown();
+   //ecore_string_shutdown();
 }
 
 void eina_bench_stringshare(Eina_Benchmark *bench)
diff --git a/src/benchmarks/eina/eina_bench_stringshare_e17.c b/src/benchmarks/eina/eina_bench_stringshare_e17.c
deleted file mode 100644 (file)
index 2b2b45c..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/* EINA - EFL data type library
- * Copyright (C) 2008 Cedric Bail
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library;
- * if not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifdef HAVE_CONFIG_H
-# include "config.h"
-#endif
-
-#include <stdlib.h>
-#include <stdio.h>
-#include <time.h>
-
-#ifdef EINA_BENCH_HAVE_GLIB
-# include <glib.h>
-#endif
-
-#include "Evas_Data.h"
-#include "Ecore_Data.h"
-
-#include "Eina.h"
-
-#if EINA_ENABLE_BENCH_E17
-
-typedef struct _Eina_Stringshare_Test Eina_Stringshare_Test;
-struct _Eina_Stringshare_Test
-{
-   const char *name;
-
-   int (*init)(void);
-   const char *(*add)(const char *str);
-   void (*del)(const char *str);
-   int (*shutdown)(void);
-};
-
-static Eina_Stringshare_Test eina_str = {
-   "eina",
-   eina_init,
-   eina_stringshare_add,
-   eina_stringshare_del,
-   eina_shutdown
-};
-
-static Eina_Stringshare_Test evas_str = {
-   "evas",
-   NULL,
-   evas_stringshare_add,
-   evas_stringshare_del,
-   NULL
-};
-
-static Eina_Stringshare_Test ecore_str = {
-   "ecore",
-   ecore_string_init,
-   ecore_string_instance,
-   ecore_string_release,
-   ecore_string_shutdown
-};
-
-static Eina_Stringshare_Test *tests[] = {
-   &eina_str,
-   &evas_str,
-   &ecore_str,
-   NULL
-};
-
-static void
-eina_bench_e17_stringshare(Eina_Stringshare_Test *str)
-{
-   Eina_Counter *cnt;
-   char *result;
-
-   cnt = eina_counter_new(str->name);
-
-   eina_counter_start(cnt);
-
-   if (str->init)
-     str->init();
-
-//#include "strlog"
-
-   if (str->shutdown)
-     str->shutdown();
-
-   eina_counter_stop(cnt, 1);
-
-   result = eina_counter_dump(cnt);
-   fprintf(stderr, "For `%s`:\n%s\n", str->name, result);
-   free(result);
-
-   eina_counter_free(cnt);
-}
-#endif
-
-void
-eina_bench_e17(void)
-{
-#if EINA_ENABLE_BENCH_E17
-   int i;
-
-   eina_init();
-
-   for (i = 0; tests[i]; ++i)
-      eina_bench_e17_stringshare(tests[i]);
-
-   eina_shutdown();
-#endif
-}
index 5e18dda..3e0f5b4 100644 (file)
@@ -1,17 +1,13 @@
 eina_bench_src = files(
 'eina_bench.c',
 'eina_bench_sort.c',
-'eina_bench_hash.c',
 'eina_bench_crc_hash.c',
 'eina_bench_stringshare.c',
 'eina_bench_convert.c',
 'eina_bench_mempool.c',
-'eina_bench_stringshare_e17.c',
 'eina_bench_array.c',
 'eina_bench_rectangle_pool.c',
 'ecore_list.c',
-'ecore_strings.c',
-'ecore_hash.c',
 'ecore_sheap.c',
 'evas_hash.c',
 'evas_list.c',