Commit graph

45 commits

Author SHA1 Message Date
zik.saleeba 985e6c960f Platform libraries now require explicit #includes
git-svn-id: http://picoc.googlecode.com/svn/trunk@440 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 20:47:17 +00:00
zik.saleeba e564b173be Some mods for the new SRV1_UNIX_HOST mode
git-svn-id: http://picoc.googlecode.com/svn/trunk@439 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 17:23:10 +00:00
zik.saleeba 7a8014ee42 Added an initial version of stdlib.c
git-svn-id: http://picoc.googlecode.com/svn/trunk@434 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 12:29:45 +00:00
zik.saleeba 0afc055ab1 Initial version of a standard string library added.
Some regressions fixed.


git-svn-id: http://picoc.googlecode.com/svn/trunk@433 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 12:19:32 +00:00
zik.saleeba 36069a5a2f First version of standard math.h handling added
git-svn-id: http://picoc.googlecode.com/svn/trunk@429 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 11:05:24 +00:00
zik.saleeba 0fc32f5bc7 A bit of a reorganisation to make adding new platforms and
C standard library modules neater.


git-svn-id: http://picoc.googlecode.com/svn/trunk@427 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-13 09:17:42 +00:00
zik.saleeba a591133f35 Added support for #include of predefined libraries.
Created a stdio.h predefined library.


git-svn-id: http://picoc.googlecode.com/svn/trunk@420 21eae674-98b7-11dd-bd71-f92a316d2d60
2010-06-05 19:00:46 +00:00
zik.saleeba d5e7a536f1 Now uses the system maths library by default
git-svn-id: http://picoc.googlecode.com/svn/trunk@395 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-11-08 11:51:24 +00:00
zik.saleeba 9ea0dcee28 Varius fixes for 64 bit architectures
git-svn-id: http://picoc.googlecode.com/svn/trunk@381 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-11-06 22:16:12 +00:00
zik.saleeba d36833b139 Fixed some warnings for 64 bit architectures
git-svn-id: http://picoc.googlecode.com/svn/trunk@380 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-11-06 18:17:36 +00:00
zik.saleeba 5c86cfaf36 Problems with prefix operators of the same precedence as a cast immediately
following the cast fixed.
Issue #55


git-svn-id: http://picoc.googlecode.com/svn/trunk@377 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-11-06 16:35:34 +00:00
zik.saleeba bb718dcf21 Turning on NATIVE_POINTERS by default.
Fixed a minor warning in pointer assignment.


git-svn-id: http://picoc.googlecode.com/svn/trunk@339 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-10-10 18:06:17 +00:00
zik.saleeba 32727cc365 Native pointers feature added
git-svn-id: http://picoc.googlecode.com/svn/trunk@331 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-06-05 00:55:54 +00:00
zik.saleeba 3a1e39f9d3 New fancy error reporting feature makes nice error messages
git-svn-id: http://picoc.googlecode.com/svn/trunk@330 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-06-04 07:41:06 +00:00
zik.saleeba bb0d19a733 Now conforms fully to the ISO C90 standard
git-svn-id: http://picoc.googlecode.com/svn/trunk@320 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-06-02 07:50:46 +00:00
zik.saleeba 825c393240 Reworking of how assignment works. Now all places which do assignment of values
should work the same.


git-svn-id: http://picoc.googlecode.com/svn/trunk@314 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-06-02 05:51:51 +00:00
zik.saleeba 5f0960d161 Added tests for new math library
git-svn-id: http://picoc.googlecode.com/svn/trunk@310 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-29 01:01:07 +00:00
zik.saleeba 280458a7c6 Made Makefile consistent with options
git-svn-id: http://picoc.googlecode.com/svn/trunk@309 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-29 00:51:48 +00:00
zik.saleeba a38afda0ab Limited decimal printing to sane precision.
Made C library able to access new math library.
UNIX compile defaults to using new math library.
Changed name of new math library to math.library.c
Added defines for new math library.
Renamed new soft floating point library to softfloat_library.c

git-svn-id: http://picoc.googlecode.com/svn/trunk@304 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-29 00:12:12 +00:00
zik.saleeba 4668c0a80e Fixed a bug which caused a hang when a comma was omitted in a parameter list, followed by an identifier.
git-svn-id: http://picoc.googlecode.com/svn/trunk@297 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-27 05:59:44 +00:00
zik.saleeba 83d6b9a6d3 Added a new math library.
Fixed printing of floating point 0.0.


git-svn-id: http://picoc.googlecode.com/svn/trunk@294 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-27 04:55:44 +00:00
zik.saleeba bd9cb90e02 Added the beginnings of flying fox platform support.
Removed some annoying debug.
Made it easier to compile unmodified on non-UNIX systems.


git-svn-id: http://picoc.googlecode.com/svn/trunk@274 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-05-04 12:02:16 +00:00
zik.saleeba 207549bf17 Reorganised platform/library stuff for better separation between
platforms.
Removed unnecessary union in pointers.


git-svn-id: http://picoc.googlecode.com/svn/trunk@203 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-03-15 07:07:21 +00:00
zik.saleeba c65cd8256b More work on the new expression evaluator
git-svn-id: http://picoc.googlecode.com/svn/trunk@201 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-03-12 10:49:57 +00:00
zik.saleeba 815dc75dbd Count now ignores comment and blank lines
git-svn-id: http://picoc.googlecode.com/svn/trunk@196 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-03-11 10:23:40 +00:00
zik.saleeba dc04ba8dd0 Split parsing across two files parse.c and the new expression.c
git-svn-id: http://picoc.googlecode.com/svn/trunk@170 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-03-08 07:56:28 +00:00
zik.saleeba 6be246b846 Being more conservative with dependency generation
git-svn-id: http://picoc.googlecode.com/svn/trunk@132 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-28 21:29:51 +00:00
zik.saleeba 9cc9c8904e Excluding platform specific code from line count
git-svn-id: http://picoc.googlecode.com/svn/trunk@111 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-24 19:43:03 +00:00
zik.saleeba 20fb2407ef Big reorganisation to make it easier to port to different targets
git-svn-id: http://picoc.googlecode.com/svn/trunk@110 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-24 11:16:37 +00:00
zik.saleeba e94767ba98 New NO_FP compile option allows removal of all floating point support
git-svn-id: http://picoc.googlecode.com/svn/trunk@101 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-24 00:21:17 +00:00
zik.saleeba 4821d689ad Big changes to string constants.
Got rid of str.c.
First attempt at stdarg params in printf()


git-svn-id: http://picoc.googlecode.com/svn/trunk@97 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-21 02:35:52 +00:00
zik.saleeba 89e5c66189 Implemented ellipsis for stdargs and stdarg stack handling
git-svn-id: http://picoc.googlecode.com/svn/trunk@95 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-20 09:04:45 +00:00
zik.saleeba 038431067f Arithmetic fixed to work with new system. "for" now works correctly again.
git-svn-id: http://picoc.googlecode.com/svn/trunk@78 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-15 06:16:54 +00:00
zik.saleeba b073f187f8 Revamped the way lvalues work. Now both structs and '.' should work.
git-svn-id: http://picoc.googlecode.com/svn/trunk@77 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-15 05:52:03 +00:00
zik.saleeba f3b46b9afc Fixed bugs in "for"
git-svn-id: http://picoc.googlecode.com/svn/trunk@76 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-12 12:15:25 +00:00
zik.saleeba 51afc538be struct are now working
git-svn-id: http://picoc.googlecode.com/svn/trunk@69 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-10 08:42:09 +00:00
zik.saleeba c9abac9fad Fixed an EOF lexing problem.
Added some optional debug.
Turned debug off.
Fixed handling of LValues to work with stack frames better.
Fixed the handling of stack frames in function calls.
Fixed a bug in popping variable stack frames.

git-svn-id: http://picoc.googlecode.com/svn/trunk@65 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-04 00:17:30 +00:00
zik.saleeba 70cc4eae49 Fixed lexer EOF handling when whitespace at end of file
git-svn-id: http://picoc.googlecode.com/svn/trunk@63 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-03 11:09:07 +00:00
zik.saleeba 86af5318da Bulko lexer change for more efficient pre-scanned tokens.
Removed Str type - replaced with standard C strings.
Added hashed string tables for efficient string storage.


git-svn-id: http://picoc.googlecode.com/svn/trunk@43 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-02-01 11:31:18 +00:00
zik.saleeba fad5c6db69 Big changes and progress towards the new type system. Doesn't compile right now. Maybe tomorrow.
git-svn-id: http://picoc.googlecode.com/svn/trunk@35 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-01-23 11:34:12 +00:00
zik.saleeba 626c29a639 Working on the heap and the new type system. Doesn't compile right now.
git-svn-id: http://picoc.googlecode.com/svn/trunk@33 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-01-21 00:52:42 +00:00
zik.saleeba 995266ce9c Added test framework.
Implemented preprocessor-style directives (not finished yet).


git-svn-id: http://picoc.googlecode.com/svn/trunk@26 21eae674-98b7-11dd-bd71-f92a316d2d60
2009-01-04 04:08:49 +00:00
zik.saleeba 939c68cd4d Intrinsic functions implemented
git-svn-id: http://picoc.googlecode.com/svn/trunk@25 21eae674-98b7-11dd-bd71-f92a316d2d60
2008-12-27 04:36:45 +00:00
zik.saleeba 704f20e1c4 Added floating point support
git-svn-id: http://picoc.googlecode.com/svn/trunk@22 21eae674-98b7-11dd-bd71-f92a316d2d60
2008-12-27 02:25:49 +00:00
zik.saleeba 7bfc2c0be5 Initial checkin of picoc. Not working yet.
git-svn-id: http://picoc.googlecode.com/svn/trunk@2 21eae674-98b7-11dd-bd71-f92a316d2d60
2008-10-13 00:53:28 +00:00