Commit graph

218 commits

Author SHA1 Message Date
Joseph Kogut
21198a8282 Added preprocessor 2013-02-08 13:51:01 -07:00
Joseph Kogut
7f753d0954 Fixed incorrect path PROF_ARGS used by build target "profile" 2013-02-07 10:57:52 -07:00
Joseph Kogut
eac3bc4291 *Split parsing functions into their own source files
*Removed unused Makefile variables
2013-02-07 10:54:22 -07:00
Joseph Kogut
cc39eadc9e Fixed typo in tvm_program.c 2013-02-07 10:13:15 -07:00
Joseph Kogut
e1a6ae6188 Merge branch 'master' of https://github.com/GenTiradentes/tinyvm 2013-02-06 11:48:12 -07:00
Joseph Kogut
25cc724b33 *Updated variable declarations and definitions to C99 standard
*Removed some excessive conditional nesting
2013-02-06 11:47:13 -07:00
Joseph
eb5b168fe7 Merge pull request #24 from bl0ckeduser/fix-tdb
Patch tdb to compile with the new Makefile and gcc 4.6.3
2013-01-28 19:02:38 -08:00
bl0ckeduser
9f563a7cb3 Patch tdb to compile with the new Makefile and gcc 4.6.3 2013-01-28 21:03:23 -05:00
Joseph Kogut
c11e5bccfa Made pointer syntax in TDB more consistent. 2013-01-25 13:05:51 -07:00
Joseph Kogut
451ff4df8e Moved example tvm programs to programs/tinyvm. 2013-01-25 11:40:26 -07:00
Joseph Kogut
3d895e0948 Made hash table naming conventions more consistent 2013-01-24 10:42:40 -07:00
Joseph Kogut
2f328be48c Merge branch 'master' of https://github.com/GenTiradentes/tinyvm 2013-01-24 10:34:56 -07:00
Joseph Kogut
885ddc1ff4 Added example program euler1_nodiv.c 2013-01-24 10:34:25 -07:00
Joseph Kogut
4d0fc4b0df Fixed link to attribution for the algorithm used in example euler1_nodiv.vm 2013-01-24 00:28:56 -07:00
Joseph Kogut
ed3acfd515 Made naming conventions more consistent. 2013-01-23 11:15:07 -07:00
Joseph Kogut
d270cc5706 Made pointer syntax consistent 2013-01-23 11:06:19 -07:00
Joseph Kogut
caf4767696 Inlined tvm_step() and htab_hash(). 2013-01-23 10:41:17 -07:00
Joseph Kogut
da125c39e2 * Fixed occasional race condition with parallel make of target "rebuild"
* Added "profile" target to makefile
2013-01-20 15:47:45 -07:00
Joseph Kogut
86c01acd8c Switched to C99 standard 2013-01-20 14:14:35 -07:00
Joseph
e57368df3e Create LICENSE 2013-01-15 08:43:43 -08:00
Joseph Kogut
6c50160728 Forget branches. TVM is supposed to be small and simple. 2012-03-30 11:44:36 -07:00
Joseph
cc3045a643 Merge pull request #21 from bl0ckeduser/master
Fix hash collisions
2012-01-23 20:07:28 -08:00
Bl0ckeduser
bc882e4db3 Hash table: implement load factor / rehash
Based on suggestion from bitbckt:

I  saw  this  in  my feed, and feel it merits comment. I hope you
don't mind the input.

You'll want to monitor the load factor of the hash table and  re-
hash  the  table  on  insert  when it is exceeded. Otherwise, key
lookup will degrade toward linear time for sets of  keys  with  a
high number of collisions.

The  easiest  way  to  implement the load factor is to maintain a
count of allocated nodes in tvm_htab_t and  divide  that  by  the
bucket count to obtain the load factor. Of course, you'd need the
bucket count (HTAB_SIZE) to be dynamic, too.
2012-01-19 17:22:41 -05:00
Bl0ckeduser
e0a387d7de Fix hash collisions (separate chaining) 2012-01-18 12:54:23 -05:00
Joseph
9771115a76 Merge pull request #20 from kk-/master
Changing actual tab characters with escaped ones
2012-01-15 22:41:10 -08:00
Kyle K
279bdc61c1 changed lexer tab characters to use an escaped tab (\t) 2012-01-16 02:05:04 +00:00
Joseph
71901e4ad5 Merge pull request #19 from bl0ckeduser/master
Improve tdb, add tdb/README
2011-12-08 19:14:43 -08:00
Bl0ckeduser
d6879ced11 Improve, debug, document tdb 2011-12-07 15:55:22 -05:00
Joseph
f3f917350f Merge pull request #18 from bl0ckeduser/patch-1
Tweak file handling code
2011-11-20 19:51:21 -08:00
Bl0ckeduser
313a440342 Implement buffer size limit in tvm_fcopy 2011-11-20 21:36:36 -05:00
bl0ckeduser
c1d5d35c27 Shorten tvm_flength, tvm_fcopy 2011-11-20 21:10:50 -05:00
Joseph Kogut
b0847a128f Created src directory 2011-11-15 05:17:41 -07:00
Joseph Kogut
19ec55c301 Fixed comment mix up 2011-10-07 13:14:47 -07:00
Joseph
4f4d9d1044 Merge pull request #17 from bl0ckeduser/master
Fix "ret" opcode crash; add recursive factorial
2011-10-07 19:27:00 -07:00
bl0ckeduser
5f669a78ce Add recursive factorial 2011-10-07 17:55:18 -04:00
bl0ckeduser
fcd0a1f7e2 Fix bug in "ret" opcode 2011-10-07 14:38:18 -04:00
Joseph Kogut
ea610836cd Added solution to Project Euler problem number 7 2011-10-02 18:06:47 -07:00
Joseph
a3c207d63d Merge pull request #16 from bl0ckeduser/master
Prime numbers program
2011-09-28 22:05:52 -07:00
Bl0ckeduser
ba1f6ce765 Add simple prime-listing program 2011-09-28 21:25:11 -04:00
Joseph Kogut
19a48f04ee Moved memory allocation for new instructions into tvm_program.c, parse_instructions() 2011-09-26 03:09:15 -07:00
Joseph
8cd840e1c7 Merge pull request #15 from bl0ckeduser/master
Quick & dirty fix for segfault
2011-09-26 09:12:20 -07:00
Bl0ckeduser
d9e3f942f5 Safety-check free()s in destroy_program 2011-09-25 15:35:03 -04:00
Joseph Kogut
72193566b9 Moved program interpretation to explicitly called function 2011-09-25 05:47:31 -07:00
Joseph Kogut
af7224085e Merge branch 'master' of github.com:/GenTiradentes/tinyvm 2011-09-08 09:46:42 -07:00
Joseph Kogut
6fb039da4a Refactored parsing of register tokens 2011-09-08 09:43:45 -07:00
Joseph
93adee0535 Merge pull request #14 from bl0ckeduser/master
Update registers documentation
2011-09-07 07:40:13 -07:00
Bl0ckeduser
5ac76ad96b Update register documentation 2011-09-06 20:04:38 -04:00
Joseph Kogut
75edb60116 * Fixed a style issue
* Inlined tvm_step()
2011-09-04 18:45:56 -07:00
Joseph
d6103eba8d Merge pull request #13 from patricksjackson/master
Removing redundancy
2011-09-04 17:25:17 -07:00
Patrick Jackson
68d066bd53 Removed the redundancy introduced by tdb_step. 2011-09-04 17:06:08 -04:00