Commit Graph

608 Commits

Author SHA1 Message Date
Carsten Haitzler eaad0eb095 big patch from Samsung SAIT (Advanced research group) for async multi-frame
rendering. to turn on:

1.
configure with --enable-async-render
2.
export EVAS_RENDER_MODE=non-blocking
  
presto. necessitates some api swizzling (thus the expedite. ecore etc. changes)

the kind of results you get on a desktop:

http://www.rasterman.com/files/evas-async-vs-none.html



SVN revision: 49087
2010-05-21 07:10:45 +00:00
Brett Nash 5259fb8d83 BUILD_NEON, not BUILD_NEONx
/me kicks me for commiting debugging code.


SVN revision: 49000
2010-05-19 09:03:46 +00:00
Brett Nash 0a18dc2c93 Neonized rotated 90 display for ARMs.
Share and enjoy.
See my previous neon related commit for more details.


SVN revision: 48999
2010-05-19 08:52:29 +00:00
Carsten Haitzler cedba3f7d9 handle gl init fialure correctly and dont mess up font init.
SVN revision: 48959
2010-05-18 04:22:33 +00:00
Brett Nash bd6b2d5cb1 Neon improvements for ARM Cortex.
Samsung Electronics just allowed me to release the first set of ARM neon
patches under the Evas licence.  They are silently helping improve EFL and
this another product of their help.

These patches have been tested on a Cortex A8 and show consistent improvement
across the board.  For expedite some tests up to 100% improvements, and
practical real world examples show that rendering limited applications show
similar improvements.  For instance in one application from 17fps->30fps or
for another 40->63fps.

The patches are pure neon code (intrinsics tend to generate worse code).  To
build under GCC you will need a recent GCC and the following C flags:
	-mfloat-abi=softfp -mfpu=neon
I also recommend -O2 and -ffast-math.

If you have any problems please let me know.


SVN revision: 48733
2010-05-10 09:24:11 +00:00
Carsten Haitzler 15b7e11198 hmm - i don't know how this happened, but - metrics were not being done
right. fixed now. i wonder why. this used to be right at some point.



SVN revision: 48503
2010-05-01 14:08:14 +00:00
Carsten Haitzler c10f1e9c5d fix map rendering of text objects.
SVN revision: 48501
2010-05-01 13:27:05 +00:00
Carsten Haitzler d37f08a616 adding... items... oooooh what are these items? invisible sized blobs treated
like characters/words for wrapping. intended for use in sticking inlined
content - like icons, images etc.



SVN revision: 48301
2010-04-25 11:35:41 +00:00
Carsten Haitzler 58c7049da8 allow neon build even if not armv4 - eg build for armv6 but add neon asm as a
"check if its there then use it" ala mmx/sse as opposed to require it all be
neon armv7 stuff ffor neon to work.



SVN revision: 48044
2010-04-16 00:13:46 +00:00
Carsten Haitzler a6e4ee23f5 oops. fix scalecache issue - would do a LOT of unload/reload thanks to extra
dump code. moved into dump code as opposed to unload.



SVN revision: 47982
2010-04-13 03:00:29 +00:00
Carsten Haitzler afe65d7c0a add ability to dump engine coontents (if engine supports it). this means
unload images it has loaded from disk, unload fonts, and more. dump dump dump!



SVN revision: 47947
2010-04-12 08:23:53 +00:00
Vincent Torri 57c16867e2 remove unused variable
SVN revision: 47840
2010-04-08 17:41:18 +00:00
Vincent Torri 438f002794 use float constants instead of double as computations
are done on float numbers


SVN revision: 47839
2010-04-08 17:41:00 +00:00
Cedric BAIL 3d27a7b9e4 * evas: improve thread rendering by moving image loading in worker thread.
SVN revision: 47434
2010-03-24 19:07:59 +00:00
Cedric BAIL 1a51c662bf * evas: make map work with threaded rendering.
SVN revision: 47429
2010-03-24 16:39:39 +00:00
Cedric BAIL f715c8584d * evas: fix uncertain lock. It's look like it improve perf here without breaking things.
SVN revision: 47428
2010-03-24 14:55:37 +00:00
Cedric BAIL 80901b0abe * evas: fix build with thread rendering on and scale cache off.
SVN revision: 47427
2010-03-24 14:46:28 +00:00
Cedric BAIL 31d6a2e21c * evas: remove lock during heavy computation.
FIXME: Still one at line 685, but don't know if it's safe to move it around.

	TODO: Fix map support with threaded rendering.


SVN revision: 47426
2010-03-24 14:45:58 +00:00
Cedric BAIL 6549ab12ce * evas: fix potential race condition with FT_Activate_Size and threaded rendering.
SVN revision: 47419
2010-03-24 11:07:37 +00:00
Cedric BAIL e414c90820 * evas: fix fribidi race condition (perhaps not the right way) with thread rendering.
SVN revision: 47418
2010-03-24 11:06:54 +00:00
Cedric BAIL 34e4c55f37 * evas: Fix thread rendering issu with scalecache.
SVN revision: 47417
2010-03-24 11:06:02 +00:00
Cedric BAIL a859e60140 * evas: Make evas_object_move on Evas_Object_Polygon work.
TODO: Make evas_object_resize work also.


SVN revision: 47291
2010-03-16 13:23:37 +00:00
Carsten Haitzler 70c60370ca ok use calloc - but.. i think llvm is wrong for:
http://people.profusion.mobi/~lfelipe/static_analysis/efl/efl-46715/evas/2010-03-01-1/report-wLmp95.html#EndPath

i can't see how that can be garbage.



SVN revision: 46764
2010-03-02 02:10:48 +00:00
Carsten Haitzler b8955f3a50 neon back - found the bug! expedite!
SVN revision: 46572
2010-02-27 07:50:11 +00:00
Carsten Haitzler b62185b395 disabel neon blend for now.. i smell some trouble somewhere.
SVN revision: 46570
2010-02-27 07:29:16 +00:00
Cedric BAIL 4d945f2c6a * evas: Remove duplicated code.
SVN revision: 46466
2010-02-25 15:10:05 +00:00
Cedric BAIL 7fcbff0e0e * evas: Bring back Font Kerning cache as it does improve performance
by a good margin on my 4 targets (SGX-530, Tango2, NVidia G73).



SVN revision: 46388
2010-02-23 13:31:10 +00:00
Marc Andre Tanner 5b4ed37b9c From: Marc Andre Tanner <mat@brain-dump.org>
Subject: [E-devel] [PATCH] evas: compile out unused dither tables

Don't include the rather large dither tables if small dithering code
is enabled during ./configure stage.



SVN revision: 46353
2010-02-22 08:12:49 +00:00
Vincent Torri b9ca64f7a5 formatting
SVN revision: 46110
2010-02-12 08:09:03 +00:00
Carsten Haitzler c0baeaeb68 1. fix fcfini issue i hit - yes . things may look like they leak in valgrind
- they dont. in reality.
2. major text rendeering speedups. up to 41% in textblock intl, 33% in
textblock basic, 12-20$ in other text rendering tests. generic eina hash's
are just tooo slow for what we are doing there. specialised "Fash"
blocked-array.
3. still LOTS of optimisations left.



SVN revision: 45829
2010-02-03 11:18:00 +00:00
Vincent Torri 8d9d9ea3a3 fix warnings
patch by Albin Tonnerre


SVN revision: 45430
2010-01-22 06:51:27 +00:00
Carsten Haitzler 45d79a15cb allow x11 engines to get x resource that sets dpi.
SVN revision: 44965
2010-01-08 07:10:53 +00:00
Gustavo Sverzut Barbieri da9ae913ae better debugging for image load
SVN revision: 44885
2010-01-04 19:18:05 +00:00
Cedric BAIL f7172f2323 * evas: Update func to prevent segv.
SVN revision: 44686
2009-12-23 13:31:45 +00:00
Gustavo Sverzut Barbieri 51c00c6526 fix evas image loading error reporting.
Evas image load was always reporint "generic" error, since it was
disconnected from actual loader modules.

This commit will break the module loader API (as it's restricted to
inside Evas, this should be no problem). The return was turned into
"Eina_Bool" for clarity, while an extra "int *error" is responsible to
report errors. This approach was choosen to force compiler warnings
and to try avoid mistakes as EINA_FALSE == EVAS_LOAD_ERROR_NONE and
thus we'd get opposite behavior if something slips.

Most loaders play well, except by eet that does not provide means to
know if the file open failed due missing file, incorrect format or
corrupted file :-(

Please report any issues. I added eina_log debugging to loader
functions, just run your Evas application as:

     EINA_LOG_LEVELS=evas_main:4 your_app




SVN revision: 44666
2009-12-22 23:11:57 +00:00
Cedric BAIL a27c701f27 * evas: Remove lot's of warning.
SVN revision: 44629
2009-12-21 15:52:12 +00:00
Vincent Torri a09ba71047 include Evil.h so that getenv is declared on Windows CE
SVN revision: 44567
2009-12-19 10:58:39 +00:00
Carsten Haitzler 87e5e70a9d fix anothe rmap draw bug.
SVN revision: 43917
2009-11-23 10:07:07 +00:00
Cedric BAIL 992a1b4f13 * evas: Add convertion function for 8bpp grayscale no pal (256 and 16 values).
SVN revision: 43491
2009-11-06 15:15:37 +00:00
Carsten Haitzler b2ac7c110a fix mmx code
SVN revision: 43386
2009-11-01 11:45:16 +00:00
Carsten Haitzler 069de70853 add color to the vertexes in map. this allows for fading/shading of
reflections, goraud shading for smooth 3d surfaces, mor realistic lighting
etc. etc. it comes at a small cost, but worth it.



SVN revision: 43384
2009-11-01 01:32:23 +00:00
Vincent Torri 00d1eab6d8 spelling
SVN revision: 43374
2009-10-31 15:18:19 +00:00
Carsten Haitzler 335081d18c ifdef++
SVN revision: 43337
2009-10-29 11:54:47 +00:00
Carsten Haitzler 422faf09fd clean up map - move to #included worker and add mmx - just copied from normal
image scaler actually.



SVN revision: 43336
2009-10-29 06:52:51 +00:00
Carsten Haitzler b0695a6712 fill in last fixme on rendering code and make it better written by moving
comon code blobs to functions.



SVN revision: 43298
2009-10-26 14:06:21 +00:00
Carsten Haitzler b36917b180 smooth map works (down to 1/2 size its good. its pretty much gl_linear, but
in software. but it looks gorgeous. rotations are groovey.



SVN revision: 43226
2009-10-23 13:17:22 +00:00
Vincent Torri e5046c8846 Fix some warnings. I don't touch map code for now.
SVN revision: 43218
2009-10-22 22:22:10 +00:00
Carsten Haitzler 041327008f a little cleaner, but not faster
SVN revision: 43204
2009-10-22 16:06:32 +00:00
Carsten Haitzler a24ad9a1c4 fast path for solid maps.
SVN revision: 43203
2009-10-22 15:51:18 +00:00
Carsten Haitzler 7fce71c5d9 add some beginnigns of utility funcs to evas map. move it to its own file.
SVN revision: 43201
2009-10-22 15:47:30 +00:00