summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
barbieri [Tue, 28 Oct 2008 18:26:06 +0000 (18:26 +0000)]
ignore generated data.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37283
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 18:12:10 +0000 (18:12 +0000)]
refactor eina_stringshare_del() to make it easier to read.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37282
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 17:47:59 +0000 (17:47 +0000)]
improve readability: avoid macros inside our code
mixing #ifdef'ed blocks inside code is bad, can lead to warnings if
some variables are not used and it's a pain to read.
instead, just define functions and always call them, choose their
implementation based on the ifdef macros. I opted to have 2
declarations, but one can go like other parts and #ifdef around the
function contents as well.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37281
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 17:19:02 +0000 (17:19 +0000)]
test small strings.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37280
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 17:16:42 +0000 (17:16 +0000)]
Add missing magic check for existing node.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37279
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 17:15:07 +0000 (17:15 +0000)]
Code refactor and cleanup of eina_stringshare_add().
Cases are now handled in separate, doing less useless steps and easier
to understand since 3 cases are now distinct.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37278
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 28 Oct 2008 16:40:34 +0000 (16:40 +0000)]
This test is now not defined. Remove it.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37277
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 16:37:32 +0000 (16:37 +0000)]
fix _GET macros.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37276
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 28 Oct 2008 15:28:46 +0000 (15:28 +0000)]
Make Eina_Rectangle_Pool more usable.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37275
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 28 Oct 2008 14:45:16 +0000 (14:45 +0000)]
Fix a little typo.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37274
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 12:34:58 +0000 (12:34 +0000)]
save a byte per stringshare node.
we don't need to use 'begin' flag (that takes a byte) just to see if
we're in the same memory block as the head, just do a pointer math.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37270
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 12:26:05 +0000 (12:26 +0000)]
reduce the popuplation_group size.
we just have special case for up to 3 letters, everything else is
regular population.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37269
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 12:23:12 +0000 (12:23 +0000)]
stringshare_del optimization.
trade off safety by speed, we will always assume str was previously
shared, like evas_stringshare_del() did and we can know with zero-cost
the number of references and can avoid strlen() too.
When references drop to zero we still have to do the hash, access the
bucket and then lookup the Red-Black tree, then walk the list of
nodes, but avoiding so would use more memory, unacceptable at this
point.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37268
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 00:42:35 +0000 (00:42 +0000)]
Save 4 bytes per big string shared.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37258
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 00:31:09 +0000 (00:31 +0000)]
Cheap way to get strlen of a shared string.
it's not safe, but it's faster and can help for large strings, maximum
cost is 4 comparisons plus one pointer access.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37257
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 28 Oct 2008 00:18:31 +0000 (00:18 +0000)]
define function as void as in prototype.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37256
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Mon, 27 Oct 2008 20:35:28 +0000 (20:35 +0000)]
dump show percentages.
not that useful, but I like it.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37253
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 27 Oct 2008 20:24:12 +0000 (20:24 +0000)]
Add Eina_Rectangle_Pool support. Typically help for font handling in OpenGL or
any case where you need to split a rectangle in many differents small rectangle.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37252
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Mon, 27 Oct 2008 20:16:52 +0000 (20:16 +0000)]
better optimize small stringshare comparison
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37251
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Mon, 27 Oct 2008 19:26:14 +0000 (19:26 +0000)]
stringshare: special case for small (2-3 letters).
This should reduce overhead and give a bit speedup as well, let's test
with e17 real data and see how it goes.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37250
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
englebass [Mon, 27 Oct 2008 15:16:06 +0000 (15:16 +0000)]
Since CLOCK_PROCESS_CPUTIME_ID is a POSIX standard, we use it if it
exists regardles of system. Seems BSD actually is the weird case here.
Still use CLOCK_REALTIME as fallback.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37249
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
englebass [Mon, 27 Oct 2008 15:08:46 +0000 (15:08 +0000)]
Better fallback on clock as suggested by Naruto TAKAHASHI
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37248
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
englebass [Mon, 27 Oct 2008 14:19:55 +0000 (14:19 +0000)]
Fix CLOCK as suggested by Ravenlock.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37247
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 27 Oct 2008 14:05:09 +0000 (14:05 +0000)]
Correctly put condition around the code.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37244
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 27 Oct 2008 13:23:52 +0000 (13:23 +0000)]
* Optimize case for string length == 0 and 1.
* Add more debug information when using --enable-stringshare-usage.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37239
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
englebass [Mon, 27 Oct 2008 09:49:13 +0000 (09:49 +0000)]
Mark unused parameter with __UNUSED__
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37214
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
raster [Mon, 27 Oct 2008 00:36:22 +0000 (00:36 +0000)]
add a stringshare dumper so we can examine what's in there and improve usage.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37186
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
mej [Sat, 25 Oct 2008 18:46:18 +0000 (18:46 +0000)]
Sat Oct 25 11:41:49 2008 Michael Jennings (mej)
Add spec file for eina.
----------------------------------------------------------------------
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37104
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
ravenlock [Sat, 25 Oct 2008 18:17:22 +0000 (18:17 +0000)]
Build on FreeBSD. Patch from Naruto, plus a tweak to remove the unneeded libdl.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37103
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
raster [Fri, 24 Oct 2008 10:57:00 +0000 (10:57 +0000)]
handle some bizarre build issues...
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37048
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
englebass [Fri, 24 Oct 2008 06:24:08 +0000 (06:24 +0000)]
modules most export init and shutdown as EAPI
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37042
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
davemds [Fri, 24 Oct 2008 00:37:09 +0000 (00:37 +0000)]
small doxy fix
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37037
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Thu, 23 Oct 2008 12:50:33 +0000 (12:50 +0000)]
Really return Eina_Bool.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@37022
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Wed, 22 Oct 2008 08:56:19 +0000 (08:56 +0000)]
Add more error information during eina module load.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36955
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
barbieri [Tue, 21 Oct 2008 15:21:37 +0000 (15:21 +0000)]
eina_bool is now an unsigned char.
This makes clear what size and if we have a signal or not in our type,
so no compilers have the right to choose different for us (like they
do with enum).
Also fixes compile of C++ programs with eina_rectangle.h, that
contains some inline code, the expression evaluates a boolean
expression and compiler does not know how to convert that to old
Eina_Bool.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36939
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 21 Oct 2008 12:49:29 +0000 (12:49 +0000)]
Rename EINA_LIST_ITER_NEXT to EINA_LIST_FOREACH.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36930
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 21 Oct 2008 12:19:57 +0000 (12:19 +0000)]
Rename EINA_INLIST_ITER_NEXT/EINA_INLIST_ITER_LAST to EINA_INLIST_FOREACH/
EINA_INLIST_REVERSE_FOREACH so it best match is behaviour. Asked by Gustavo.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36928
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
kaethorn [Tue, 21 Oct 2008 12:07:40 +0000 (12:07 +0000)]
Add Debian files.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36927
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 21 Oct 2008 11:28:38 +0000 (11:28 +0000)]
Add merge function to list data type.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36922
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 20 Oct 2008 15:01:01 +0000 (15:01 +0000)]
Actually include eina_convert in the main header.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36860
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 20 Oct 2008 14:45:01 +0000 (14:45 +0000)]
Fix hash iterator to iterate with only one element.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36858
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 20 Oct 2008 13:23:18 +0000 (13:23 +0000)]
Put the mempool backend structure with other structure.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36855
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 20 Oct 2008 13:21:52 +0000 (13:21 +0000)]
Zero is a correct value.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36854
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
raster [Mon, 20 Oct 2008 12:08:16 +0000 (12:08 +0000)]
actually compile!
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36849
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Mon, 20 Oct 2008 11:40:01 +0000 (11:40 +0000)]
Apps can now provide their own mempool.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36847
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
raster [Mon, 20 Oct 2008 04:30:21 +0000 (04:30 +0000)]
and remvoe cats
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36834
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
raster [Mon, 20 Oct 2008 04:25:13 +0000 (04:25 +0000)]
make eina able to do automake 1.9 and before... :)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36833
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
caro [Thu, 16 Oct 2008 21:31:51 +0000 (21:31 +0000)]
Fix compilation and warnings on Windows:
* include Evil.h for getenv on mingw32ce
* include config.h in benchmark.c so that EAPI is correctly defined
* minor fixes in configure.ac
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36729
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Wed, 15 Oct 2008 16:47:54 +0000 (16:47 +0000)]
Seems better that way.
Thanks for your help ni1s.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36691
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Wed, 15 Oct 2008 16:40:57 +0000 (16:40 +0000)]
Oops forgot this one.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36690
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Wed, 15 Oct 2008 16:23:14 +0000 (16:23 +0000)]
Should fix build outside of the source tree.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36689
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 14 Oct 2008 15:32:57 +0000 (15:32 +0000)]
Add option to report stringshare usage (E17 use around 10000 differents strings).
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36658
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Tue, 14 Oct 2008 15:31:45 +0000 (15:31 +0000)]
Fix stringshare bug with same length.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36657
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33
cedric [Fri, 10 Oct 2008 09:38:39 +0000 (09:38 +0000)]
Move eina outside of PROTO.
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eina@36564
7cbeb6ba-43b4-40fd-8cce-
4c39aea84d33