Commit graph

427 commits

Author SHA1 Message Date
dtrg 9bcefaafa8 Broke dependency on tool_cpp in order to speed up the build. 2006-07-30 23:41:16 +00:00
dtrg 014be56fb0 Replaced calls to the custom strindex() and strrindex() functions with the
exactly equivalent and standard strchr() and strrchr() functions instead.
2006-07-23 20:01:02 +00:00
dtrg 304c0e21a0 Added support for the top target peephole optimiser. 2006-07-22 12:31:19 +00:00
dtrg fdcdaadcb8 Rationalised use of #includes to be more standards-compliant. 2006-07-22 12:28:20 +00:00
dtrg db0b628497 Removed a definition of 'struct label' as 'label_t', as it clashes with
a common Posix extension on BSD systems.
2006-07-21 10:35:34 +00:00
dtrg 097c640a6c First version in CVS. 2006-07-20 23:24:28 +00:00
dtrg 4c0a0e6119 Rationalised use of #includes to be more standards-compliant. 2006-07-18 17:10:29 +00:00
dtrg 2aca7fbaf4 Renamed the private 'atol()' function to 'our_atol()' to avoid clashes with the libc one. 2006-07-18 16:57:51 +00:00
dtrg dd400ca720 Removed a call to _cleanup(), which appears to be a Minixism (and should be unnecessary). 2005-06-24 22:12:02 +00:00
ceriel a96a9107c8 'ed -' is no longer supported on some systems. replaced by 'ed -s' 1995-08-17 12:22:33 +00:00
ceriel 1db6a3029b Header --> Id 1994-06-24 14:02:31 +00:00
ceriel fe99903321 Several changes: did not work right when compiled with the ANSI C compiler 1993-11-24 15:37:27 +00:00
ceriel e30d27c418 Fixed bug in newlabel: assertion was wrong 1993-11-24 12:07:26 +00:00
ceriel 0e6e7bc913 Fixed for machines without .o 1993-11-19 09:59:11 +00:00
ceriel 861f4afc0c Added -LIB where needed 1993-10-07 10:56:25 +00:00
ceriel 468d98750c Fixed problem with relocation,
added curr_token, so that parser can access token
1993-02-08 13:01:30 +00:00
ceriel dc108fd084 Removed adder.h from proto.libfp 1993-01-05 12:52:47 +00:00
ceriel be2c36fbe5 Removed adder.h from .distr 1993-01-05 12:50:30 +00:00
ceriel 005f32298f Updated for ANSI C, cleaned up a bit 1993-01-05 12:06:58 +00:00
ceriel d2fb022441 improved ply handling 1992-12-18 10:29:31 +00:00
ceriel ed2ba2e1d5 improved ply handling 1992-12-18 10:22:55 +00:00
ceriel 4d068e8e04 ply adaption was wrong for EM replacements 1992-12-17 12:52:21 +00:00
ceriel 0299ae9ad0 Improved installation mechanism 1992-09-07 13:21:34 +00:00
ceriel 8cbf1bae34 Apparently forgot about the .so suffix 1992-07-28 08:28:48 +00:00
ceriel 0571a16bcb Allow for machine-dependent options 1992-03-27 17:38:54 +00:00
ceriel 5ccd830347 replaced atol definition 1991-12-18 16:15:18 +00:00
ceriel 952bd37627 removed atol reference 1991-12-18 16:01:44 +00:00
ceriel b23ed92d7e Use cp_dir to copy directories 1991-12-18 09:44:10 +00:00
ceriel 53c4951b29 Do not use '#endif/#else xxx'; it is not allowed for ANSI C 1991-12-17 15:05:43 +00:00
ceriel 0c59e2e12d Prevent name clashes with sys/types.h on system V 1991-12-16 15:24:24 +00:00
ceriel d162f3edb0 Made acceptable for our ANSI C compiler 1991-12-02 15:30:28 +00:00
ceriel 6cc9665025 Fix in proto.make 1991-10-22 14:35:13 +00:00
ceriel e72aafb165 Added rule to compile as.c 1991-10-22 09:18:32 +00:00
ceriel 237fb752e5 Use ASAR instead of AR 1991-10-16 17:57:53 +00:00
ceriel bade2375b5 Added proto.libf77 1991-10-10 15:00:43 +00:00
ceriel 7520aec9d4 Made to work for SPARC 1991-09-27 14:51:43 +00:00
ceriel 8baee004e8 Added mes 11 1991-09-25 09:15:22 +00:00
ceriel 2962e93407 Added -L flag 1991-09-18 18:44:30 +00:00
ceriel a0858c04e4 Many fixes 1991-09-18 10:02:37 +00:00
ceriel 8c82c2e5ef MAXPROCARG could be 0 1991-09-17 09:46:12 +00:00
ceriel 3863f0d1a2 Added compmodule 1991-09-16 12:47:00 +00:00
ceriel 132d7ddd95 Added 1991-09-16 11:47:43 +00:00
ceriel 443aae6f7a Added proto.libdb 1991-09-16 11:45:37 +00:00
ceriel 5bfd012ea3 Added grind 1991-09-16 11:45:26 +00:00
ceriel 24c41e0d4d Added -I. to includes 1991-09-16 09:44:21 +00:00
ceriel 65454de06c Fixed proto.make 1991-09-13 14:56:50 +00:00
ceriel 55d1808387 Added proto.sysmon to .distr 1991-09-10 12:23:18 +00:00
ceriel 206afe317c New installation mechanism 1991-09-04 12:01:39 +00:00
ceriel 89b73247c7 New installation mechanism 1991-09-04 10:45:29 +00:00
ceriel b53634fa73 New installation mechanism 1991-08-28 11:28:56 +00:00
ceriel 3c221691b3 Added proto files 1991-08-23 14:07:27 +00:00
ceriel 2b3ea5faab Added proto.make file 1991-08-23 14:06:51 +00:00
ceriel c34fcda208 Fixes: sometimes entered panic mode with wrong fakestack 1991-07-30 16:05:59 +00:00
ceriel 0d65b92220 removed -i flag 1991-02-19 16:57:39 +00:00
ceriel 1ed0f8180f hash() now returns same value on 2-byte and 4-byte machines 1991-02-04 14:25:58 +00:00
ceriel 0b26bdf5fb Some changes in search for more efficiency 1991-01-11 14:20:59 +00:00
ceriel 224ac1b8ff Some more optim (?) 1991-01-11 10:54:03 +00:00
ceriel f572b1fb35 some changes that may make ncg a tiny bit less inefficient 1991-01-10 18:39:36 +00:00
eck e37c249248 added casts of pointer difference to integer 1990-12-17 14:22:41 +00:00
ceriel 41dc11e497 Fixed problem with cost computation, added some assertions and
added some more precise debugging printing
1990-12-17 10:02:52 +00:00
ceriel 91ee73faa3 made Makefile more portable 1990-11-27 16:51:58 +00:00
ceriel 99bfba6a45 Added Johan's changes 1990-11-16 15:58:36 +00:00
ceriel da44a4c705 Added a default for WRD_FMT 1990-11-15 10:27:15 +00:00
ceriel a618b9a759 also remove barrier.so 1990-11-13 17:38:50 +00:00
ceriel c7fc857c2d Compile fptrp.e with EMFLAGS 1990-11-13 15:39:11 +00:00
ceriel 32f21c2bfa changed 'uses REG=%1' behaviour: if no REG containing %1 is found, an
attempt is made to find an empty one
1990-10-26 18:18:53 +00:00
eck 5badcb4296 changed stackheight computation to top element size computation 1990-09-04 17:16:00 +00:00
ceriel 2f83a7e3d9 fix: also kill condition codes if they are set to a register that is to be killed 1990-09-03 11:12:44 +00:00
ceriel e0ff37aa6e support for long strings 1990-08-01 14:30:45 +00:00
ceriel 6d675af42c removed limit on string size 1990-07-30 15:40:08 +00:00
ceriel 5c0938d05b Added some more support for debugger 1990-07-30 09:43:45 +00:00
eck 7ef2d1bc37 switch to text segment when generating a label 1990-07-20 14:02:35 +00:00
eck 4ef2c70ed3 added stackheight message handling 1990-07-18 14:53:19 +00:00
ceriel f2b4713c24 cast ptrdiff_t to int for ANSI 1990-04-25 14:23:05 +00:00
ceriel 16ef0467a8 Fixed wrong assertion, and fixed bug in distance routine: it did not check
that each stackpattern token that does not exactly match can be made from the
stack
1990-04-04 14:52:29 +00:00
ceriel 95632b0fef Oops in assertion: MAXPROCARG instead of MAXPROCARGS 1990-02-23 17:05:04 +00:00
ceriel 0ec452930f print pointer as hex 1990-02-23 16:58:34 +00:00
ceriel 3f950c9f17 Added a new operator for ncg: is_rom() 1990-02-09 16:34:17 +00:00
ceriel 0c5cce9a96 max filename length too short in error messages 1990-01-31 16:27:05 +00:00
ceriel 89b736ba83 Added mechanism to warn correctly about conflicts 1990-01-19 16:05:44 +00:00
ceriel a5f05e8ba0 changed character comparisons with NULL 1989-12-13 09:19:47 +00:00
ceriel cd64ce0424 rounding for un-normalized numbers was wrong 1989-11-29 09:56:59 +00:00
ceriel 79b0bb3347 do not declare sprintf. On some systems it is an int, on others it is
a char *
1989-11-29 09:55:03 +00:00
ceriel b91af798bc fixed rounding on ties to round to even, and fixed extend bug (test for 0
was wrong)
1989-11-27 16:26:02 +00:00
ceriel a46596cbba new object module makes buffering superfluous 1989-11-17 16:50:59 +00:00
ceriel 95fc55f840 fix: did not work for 4-byte floats 1989-11-09 17:01:29 +00:00
ceriel d9d6cc127f Allow more procedure parameters 1989-11-09 11:04:18 +00:00
ceriel 339f9dd942 fixed bug in EM replacement code, and use new #defines from tables.h 1989-11-08 17:13:33 +00:00
ceriel 74546bd985 Added a command to kill a register 1989-10-26 15:41:38 +00:00
ceriel 13ea4896b0 changes for different byte orderings 1989-10-25 17:15:37 +00:00
eck 78d3e500fb added CPP variable to Makefile 1989-10-20 11:05:00 +00:00
ceriel 319d9bcfe0 declaration of sprintf only if __STDC__ is not defined 1989-08-21 11:43:41 +00:00
ceriel 04dcaf5685 did not handle -0.0 right 1989-08-15 09:04:49 +00:00
ceriel 37379d70ba some fixes: fif did loose too many bits; unnormalized form did not work 1989-07-31 15:10:54 +00:00
ceriel f7360f0fec many changes, to use IEEE format 1989-07-25 14:21:09 +00:00
ceriel a7b5504034 new mechanism for floating point constants 1989-07-10 17:15:55 +00:00
ceriel c820d77690 new floating point constant mechanism 1989-07-10 16:52:02 +00:00
ceriel 9953b58092 don't remove compiler generated labels when they are external 1989-06-19 11:19:22 +00:00
ceriel 3ecaa0b634 some fixes: fix order in which registers are allocated, make sure that
a pattern chosen by the distance routine can be made from the stack if the
fakestack does not contain enough tokens
1989-03-17 16:49:58 +00:00
ceriel a22bbe847f use calloc instead of malloc, to make sure block is initialized to 0 1989-03-01 10:00:37 +00:00
ceriel 6f4bdccf04 removed prt_ext 1989-02-23 10:08:20 +00:00
ceriel 59ea3478ac Add include directory when compiling head 1989-02-16 09:40:52 +00:00
ceriel 920ba0eebe delinted somewhat 1989-02-02 16:31:51 +00:00
ceriel b45706ce7a delinted a little 1989-01-19 16:41:55 +00:00
ceriel 4c76583aba simplified assertion 1989-01-19 13:48:09 +00:00
ceriel 406d024e9f change to keep lint happy 1989-01-17 11:23:33 +00:00
ceriel 17e980aa15 Also pass SRC 1988-10-04 10:04:37 +00:00
ceriel 143531822a speeded up :-) 1988-08-11 22:02:53 +00:00
ceriel 5aa128ea62 speeded up again :-) 1988-08-11 14:50:18 +00:00
ceriel 2cb7fcf861 leave maximum value if overflow trap is handled 1988-08-11 10:28:30 +00:00
ceriel d308f4a3c2 fix: the minimum exponent is 1, not 0! 1988-08-10 22:33:48 +00:00
ceriel bb46f5218c Added version for machines with proper 4-byte operations 1988-08-10 10:07:53 +00:00
ceriel 05bac6c619 also detect 0/0 1988-08-05 11:40:29 +00:00
ceriel dc72163d44 cleaned up a bit 1988-08-04 18:10:34 +00:00
ceriel b26e580a74 cleaned up a bit, and made add_ext and sub_ext proper entry points,
without preconditions on the arguments
1988-08-04 11:16:20 +00:00
ceriel 2a9fe2a774 some modifications to improve speed (sorry, I mean, make a bit less slow) 1988-08-03 23:31:40 +00:00
ceriel 0406776361 fixed again 1988-08-02 11:57:37 +00:00
ceriel bcec2e84b5 merged with Michael Felts latest version 1988-07-25 10:46:15 +00:00
ceriel 24c59f9f68 adf and sbf did not work with 0.0 1988-07-22 20:54:49 +00:00
ceriel b9aa04dbb3 fixed problem with temporary DEALLOCATES: sometimes a register was
used for stacking, that was only temporarily deallocated
1988-07-15 11:23:44 +00:00
ceriel f0d3a648af fixed problem with temporary DEALLOCATES: sometimes a register was
used for stacking, that was only temporarily deallocated
1988-07-15 11:12:13 +00:00
ceriel 7aca78dc21 Also hide name b64_sft 1988-07-14 11:11:48 +00:00
ceriel e8931fe5de make to compile on Xenix 1988-07-14 10:11:01 +00:00
ceriel 1cf834f731 did not work properly; assumet it could remove sign AFTER converting to
machine dependant order
1988-07-13 20:00:22 +00:00
ceriel 722bf6de1e Added debug statement 1988-07-13 13:43:45 +00:00
ceriel ccbf4f0cf6 made to compile on Xenix 1988-07-12 14:19:03 +00:00
ceriel 53bda08502 do not use shell meta characters in dependents; some makes do not like it 1988-07-12 11:10:31 +00:00
ceriel 3048d94603 bug fix: an array was declared too small 1988-07-07 10:55:52 +00:00
ceriel 5391cf8b17 fixed; did not compile 1988-06-29 16:48:07 +00:00
ceriel 78f0107cb8 only change sign when value is not 0 1988-06-29 16:34:40 +00:00
ceriel e64951e1d3 removed some lint complaints 1988-06-28 14:41:02 +00:00
ceriel 2f7e414d42 corrected lint entry 1988-06-28 14:36:21 +00:00
ceriel 3be40e8f15 removed some lint complaints 1988-06-28 13:55:25 +00:00
ceriel bd975e3041 removed some lint complaints 1988-06-28 13:43:54 +00:00
ceriel d3723b3d38 modified distance function somewhat 1988-06-24 12:03:02 +00:00
ceriel b72f2848dd fixed panic mode 1988-06-22 18:47:48 +00:00
ceriel c146e278fc distance routine improved a little; still not safe! 1988-06-22 16:22:07 +00:00
ceriel a0934dc7e0 made bittable dynamic 1988-06-16 13:24:10 +00:00
ceriel 8f1cac51c8 Added option for temporary directory 1988-06-16 09:57:59 +00:00
ceriel adadb10b17 corrected 1988-06-13 18:01:47 +00:00
ceriel be8815e2b7 made nbits a long 1988-06-13 17:57:39 +00:00
ceriel 192de9bf32 linenumber in long instead of short 1988-06-13 15:28:19 +00:00
ceriel cd893a6ff8 corrected 1988-06-03 14:25:26 +00:00
ceriel 0be2e884b1 some last-minute minor changes 1988-05-06 17:03:30 +00:00
ceriel c4d0a4f449 corrected the overflow checks 1988-04-28 14:21:55 +00:00
ceriel d9638fca0e fixed bug: did not convert 0 right 1988-04-25 18:13:32 +00:00
ceriel 3edf9486c9 fixed to not accept dots in numbers 1988-04-22 18:34:22 +00:00
ceriel b948e4b59d corrected; sometimes lookahead would fail 1988-04-22 14:02:43 +00:00
ceriel 0aa6d4ed5d corrected: a shift of 32 is not portable! 1988-04-21 18:40:42 +00:00
ceriel 1c7c9c60cf fef4 and fef8 did not quite work properly: the exponent part is an
int, not a short!
1988-04-14 18:06:47 +00:00
ceriel f92dad2d9d only fclose on non-NULL streams 1988-04-14 16:09:02 +00:00
ceriel 6eb15567ae Added some debug print statements 1988-04-11 10:55:07 +00:00
ceriel 10b3d3d862 added floating point lib 1988-04-07 11:42:21 +00:00
ceriel 8ee3542787 Added copyright notices 1988-04-07 11:40:46 +00:00
ceriel 8a96f95c59 Initial revision 1988-04-07 10:57:49 +00:00
ceriel 92f28ae164 Added another debug statement 1988-03-31 12:50:12 +00:00
ceriel 14d7db7499 remove some of the lint complaints 1988-03-31 11:17:47 +00:00
ceriel 092292683c modified to use a different 'panic' strategy, and use
new clash-table in tables.c when possible, and some other tuning
1988-03-31 10:14:48 +00:00
ceriel ea9e90d785 fixed for operand separators within operands 1988-03-14 15:58:07 +00:00
ceriel 8fc22f0db7 allow assembler to read from STDIN 1988-02-05 15:10:08 +00:00
ceriel 048eac2d67 fixed to also read from standard input 1987-11-25 16:55:51 +00:00
ceriel a1ae336247 first arg to putc must be int or char, not long 1987-09-01 18:31:42 +00:00
ceriel f00c143b28 added declaration for fopen 1987-09-01 15:58:30 +00:00
ceriel cb16212a09 declared freopen; apparently it is not declared in stdio.h
on some systems
1987-09-01 15:24:15 +00:00
ceriel 16c73e6654 use malloc instead of sbrk 1987-08-06 13:04:20 +00:00
ceriel 6d85667761 bigger define for MAXSTAB 1987-08-06 13:00:47 +00:00
ceriel c9f7d845a2 temporary fix for commas within operands 1987-08-05 13:09:37 +00:00
ceriel 69843cf9ce Added -DNDEBUG to Makefile, table now kills regvars 1987-07-06 15:28:59 +00:00
ceriel d41028a664 pass EMHOME to nested make 1987-06-30 18:30:45 +00:00
ceriel d473c8b1df Added some register decls 1987-06-30 18:24:27 +00:00
ceriel 87c67b8c5f EM --> EMHOME 1987-06-30 18:20:25 +00:00
ceriel 798261d992 pass EMHOME to nested make 1987-06-09 10:19:47 +00:00
ceriel dd2cf6bbaa Fix in wrong assertion 1987-05-21 09:28:33 +00:00
ceriel 45f384c870 improved ROM handling 1987-05-18 15:50:42 +00:00
ceriel 32a436bab4 handle ROM's better 1987-05-18 13:29:32 +00:00
ceriel 81b1d21c35 Initial revision 1987-04-13 10:32:47 +00:00
ceriel 96d15a6c05 minor mod 1987-04-03 11:18:49 +00:00
ceriel 4b30a95d7a minor mods 1987-04-03 11:16:46 +00:00
ceriel 11db9b8fdc Added EMHOME 1987-04-01 08:54:00 +00:00
ceriel 1d443b6b4b bug fix 1987-03-27 13:34:46 +00:00
ceriel 391f6cc9ea could not be handled by MINIX pre-processor 1987-03-23 14:48:56 +00:00
ceriel 8829d77144 made name shorter 1987-03-19 10:15:58 +00:00
ceriel 88db8b43da Added distr entry 1987-03-19 10:12:51 +00:00
ceriel 6eaf182cee Added Rcs Id 1987-03-10 11:49:39 +00:00
ceriel 5537abbdfb Added copyright notice 1987-03-10 01:26:51 +00:00
ceriel 815166e421 Added copyright notice 1987-03-09 19:15:41 +00:00
ceriel f36ee6de55 could loop again 1987-03-05 17:40:48 +00:00
ceriel 5380ae4768 Set "saveemp" before calling compute. compute might need it. 1987-03-04 10:34:57 +00:00
ceriel 0b92bc0cd7 Set saveemp before calling "compute". "compute" might need it! 1987-03-04 10:32:22 +00:00
ceriel f2a77335b0 An attempt to make "erasereg" a little more efficient, as it seems
often to be called to erase the condition codes.
1987-02-21 22:20:10 +00:00
ceriel d493ffcfde bug fix 1987-02-20 17:35:08 +00:00
ceriel a3c78bffe6 Bug fix 1987-02-20 17:33:06 +00:00
ceriel 04d031d33d Added some buffering for writes 1987-02-13 12:44:33 +00:00
ceriel 6d0a4a9ce0 changed directory: nas --> as 1987-02-09 16:29:15 +00:00
ceriel 2c29e9f07c Changed an assertion that was no longer valid 1987-02-07 01:50:48 +00:00
ceriel 729490c212 *** empty log message *** 1987-02-07 00:35:16 +00:00
ceriel 622530ae68 Changed hash function, added "registers" 1987-02-07 00:13:56 +00:00
ceriel 4d92d60469 Added some "registers" 1987-02-07 00:04:05 +00:00
ceriel 5afc7363f0 *** empty log message *** 1987-02-04 17:43:20 +00:00
ceriel aab8668d4b Bug fix 1987-01-28 15:15:28 +00:00