Commit Graph

35 Commits

Author SHA1 Message Date
Vincent Torri 9be35d243b autotools cleanups:
* reorganize configure.ac
 * remove eina dependency, use the new ac_attribute m4 macro
 * fix Libs.private field and add Requires field in embryo.pc
 * rename embryo.c.in to embryo.dox.in
 * add doc rule to build the documentation. The doc will completely
   be fixed in the next commit



SVN revision: 37116
2008-10-26 08:04:06 +00:00
Vincent Torri 67acca9238 move header files from embryo_private.h to source files
SVN revision: 36915
2008-10-21 08:40:54 +00:00
doursse a86946850d remove trailing spaces and add indent doc for vi
SVN revision: 34246
2008-04-11 19:06:18 +00:00
kiwi a001af9e23 fix some warnings, mostly missing "void" when a function has no parameters
SVN revision: 30474
2007-06-27 10:57:54 +00:00
tilman 1a4dbaa145 fixed some const char*/char* confusion.
SVN revision: 29277
2007-03-31 10:28:20 +00:00
Carsten Haitzler d7eee7eee6 patches that i said were in - commit. (see my reply emails)
also finish off a TODO item or 2


SVN revision: 23267
2006-06-07 23:30:15 +00:00
Carsten Haitzler 40afcfbd5b fix warnings
SVN revision: 19564
2006-01-06 18:02:51 +00:00
Carsten Haitzler d73081e84b fix push/pop to recurse properly
SVN revision: 18687
2005-11-29 04:13:02 +00:00
Carsten Haitzler 5d5a4b4551 fix some typedefs... and cell arrays...
SVN revision: 12416
2004-12-09 05:10:42 +00:00
Carsten Haitzler 78e5656a61 instruction limiter on the amx lets u limit function runs in instruction count
SVN revision: 11905
2004-10-19 09:36:35 +00:00
Carsten Haitzler 9a09666229 embryo speedups...
this makes embryo just about the fastest "scripting vm" around - unless you
tie yourself to a particular cpu and add a jit for that cpu (which embryo
doesnt have).

 bash:                  4681.700 (estimate - ran only 1/100th of loop)
 python:                  38.193
 ruby:                    21.015
 perl:                    18.925
 java (gij-3.4) (no jit):  2.484
 embryo:                   1.041
 java (kaffe)      (jit):  0.176
 c:                        0.157

notice emrbyo is more than double the speed of the java vm. this is all
portable code - no jit tied to 1 cpu. we can add that later per cpu - but for
a vm/scripting solution thats cross-platform and runs anwyeher on 32, 64bit
cpus, ppc, x86, x86-64, alpha, arm, sparc, mips etc. it's pretty damn good.

yes this test is VERY naieve and simple and only tests a subset - but it
tests the general execution and interpreting engine, being able to make
logical decisions, interpret code and do math operations. we should do a more
comprehensive test, but this is pretty good for a simple one.

here's the source used:

bash:
#!/bin/bash
I=1
while [ $I -lt 1000000 ]; do
  let I++
done

python:
i = 1
while i < 100000000:
    i = i + 1

ruby:
1.upto(100000000) { }

perl:
#!/usr/bin/perl
for ($i = 1; $i < 100000000; $i++) {
}

java:
public class loop {
   public static void main(String[] args) {
      int i;
      for (i = 1; i < 100000000; i++) { }
   }
}

embryo:
main() {
   new i;
   for (i = 1; i < 100000000; i++) { }
}

c:
main() {
   int i;
   for (i = 1; i < 100000000; i++);
}


SVN revision: 11880
2004-10-14 04:17:20 +00:00
tsauerbeck c52cd76b91 oops, accessing random memory is bad
SVN revision: 11834
2004-10-11 19:26:08 +00:00
ncn bfb1076a77 Embryo documentation. About 90% done. Still some extra explanatory stuff to do, and some bugs to iron out, but all the functions in the API now at least have something written about them.
SVN revision: 11722
2004-09-25 14:37:39 +00:00
Carsten Haitzler b25fae82f4 wow. now THAT was interesting. multiple native call entries in the native
symbol table... so returning once the first was set was not a good idea.


SVN revision: 11336
2004-08-24 06:37:26 +00:00
Carsten Haitzler 0d6ca125b5 norty norty! put that code back! it IS used!
SVN revision: 10858
2004-07-16 03:20:18 +00:00
tsauerbeck 44a33d1f1d fixed some warnings
SVN revision: 10778
2004-07-11 09:50:42 +00:00
Carsten Haitzler 41b8b1cf4d embryo support for varargs... i was just missing native funcs to export
enough info


SVN revision: 10656
2004-07-01 06:08:06 +00:00
Carsten Haitzler 9f634895bf stafford patch
SVN revision: 10442
2004-06-06 04:41:56 +00:00
Carsten Haitzler 74c61becdf should have fixed big endian issues with embryo now. it works on sparc,
shoudl work on ppc and works on alpha and x86. i shoudl test opteron i guess...


SVN revision: 10248
2004-05-15 17:24:56 +00:00
Carsten Haitzler d27f9301a0 1. test.sma will become a comprehensive test now... starting anyway
2. fixed OP_SWITCH handling - man it was so broken!


SVN revision: 10239
2004-05-15 05:04:07 +00:00
Carsten Haitzler 14ab26edd4 fix str... snprintf... oops
SVN revision: 9525
2004-03-30 09:35:50 +00:00
Carsten Haitzler 811cd94fba more meaty api...
SVN revision: 9518
2004-03-29 11:58:57 +00:00
Carsten Haitzler 76b6621bba data set/get
SVN revision: 9486
2004-03-26 08:07:47 +00:00
Carsten Haitzler 8e4af28c5b 1 more call
SVN revision: 9485
2004-03-26 06:23:13 +00:00
Carsten Haitzler 9c7d952185 oops. accidentally removed that... fix!
SVN revision: 9484
2004-03-26 04:25:33 +00:00
Carsten Haitzler a6ea2124d2 woop! it works... 64bit cleanliness left.
SVN revision: 9483
2004-03-26 04:12:36 +00:00
Carsten Haitzler ec5ae240d0 actually memory will be aligned anyway... :)
SVN revision: 9482
2004-03-26 03:26:09 +00:00
Carsten Haitzler 41162f95e6 fix some code up.. clean.. a FIXME i noticed...
SVN revision: 9481
2004-03-26 03:24:33 +00:00
Carsten Haitzler 25af2e595c compiler SHHHHHHHHHHHH
SVN revision: 9471
2004-03-25 07:03:00 +00:00
Carsten Haitzler ea5fbe2674 fix endianess...
SVN revision: 9464
2004-03-25 05:40:55 +00:00
Carsten Haitzler c62848b02f swap all code bytes!
SVN revision: 9460
2004-03-25 04:38:07 +00:00
Carsten Haitzler 06369590b3 oosp backwards ifdef
SVN revision: 9459
2004-03-25 03:59:18 +00:00
Carsten Haitzler 8c4511cbc2 fix endianess stuff... in amx
SVN revision: 9458
2004-03-25 03:50:32 +00:00
Carsten Haitzler f14640499b need a swap!
SVN revision: 9457
2004-03-25 03:05:27 +00:00
Carsten Haitzler 7b4b36e5d2 and E cvs did givbe birth to an Embryo! :)
SVN revision: 9445
2004-03-24 09:48:28 +00:00