Commit Graph

286 Commits

Author SHA1 Message Date
jtc 4def0687f4 fix stupid typo 1995-11-17 19:32:26 +00:00
cgd 5b14175ea1 be more conservative when setting the gp 1995-11-04 00:23:04 +00:00
jtc a0ed1b8ba8 Assembly language implementation of strcat(). Derived by merging existing
strlen() and strcpy() functions.
1995-10-21 20:24:48 +00:00
jtc 8a5e159d9f Rewrite to remove instruction in inside of loop. Instead of maintaining a
count, subtract the start address from the end address.
1995-10-21 20:21:15 +00:00
cgd 7a8e7b22a1 deal properly (i hope!) with registers' upper 32 bits, when doing
32-bit division and remainder.  Sometimes, when optimizing, they could
have been different than previously expected (and could have caused
hokey results).
1995-09-30 03:09:07 +00:00
cgd 2940a41ce2 kill some now-bogus XXX's 1995-09-30 02:14:17 +00:00
jonathan 509475b244 Copy the input argument to $f0 so we handle negative inputs properly
in the tail.

Doesn't yet handle +/- inf as cleanly as other implementations.
1995-09-29 21:59:45 +00:00
cgd 473d5f491e return dest string pointer, not source string pointer! 1995-09-26 03:37:10 +00:00
jonathan 945bd69ebd The old mips modf didn't work (pr 1048). This replaces it with
a version that does work on little-endian MIPS CPUs. Not tested on
big-endian MIPS; the "li.d" may be byteorder-dependent.
1995-09-25 19:28:27 +00:00
jonathan 946af1bccf Fix an old bug, whereby ASMSTR() was used before #including "SYS.h", where
it was defined.
1995-09-25 19:21:41 +00:00
phil d995fcfdb1 correction from Matthias Pfaller. 1995-09-20 22:34:03 +00:00
pk c060b81fb7 Make PIC-safe. 1995-08-14 15:47:32 +00:00
cgd e7b36fb1b4 fast(!) bzero(), by Trevor Blackwell. 1995-08-14 04:09:23 +00:00
cgd adca5aa4fc save & restore the argument registers, too. from Trevor Blackwell 1995-08-14 02:20:07 +00:00
cgd c37c5ab530 Alpha assembly language bcopy(), written by Trevor Blackwell
<tlb@eecs.harvard.edu>.  I added support for using it as memcpy()
and memmove(), by compiling with the appropriate options.
1995-08-13 00:42:27 +00:00
cgd 2fe62c130b stubs to define things, and include the bcopy source 1995-08-13 00:40:47 +00:00
cgd a4c632dfff bcopy is now a .S, add memcpy.S and memmove.S 1995-08-13 00:35:53 +00:00
jtc ba9dbab5b4 remove single quote from comment 1995-06-29 20:42:22 +00:00
jonathan c93ec6801c *** empty log message *** 1995-06-28 02:18:21 +00:00
pk 02cf7515b7 Make PIC safe. 1995-06-20 22:45:46 +00:00
ragge 1f67145235 Converted K&R -> ansi. 1995-06-01 01:11:41 +00:00
briggs b1f67e2969 m68k sig{set,long}jmp from Henric Jungheim (uhenric@mcl.ucsb.edu) as
followup to GNATS report port-amiga/1009.
Passes regression tests.
I added a NetBSD string and changed jbra to jra.
1995-05-03 03:43:05 +00:00
phil e4748bf0ca typo: fld_... -> flt_... 1995-05-03 03:25:11 +00:00
cgd d2e405e546 functions to set FP exception masks & sticky exceptions. they abort, for now. 1995-04-29 05:10:55 +00:00
cgd 3e14f3894b get & set FP rounding direction. these actually seem to work. 1995-04-29 05:09:53 +00:00
cgd 234eecadfb add entries for the float rounding and exception functions 1995-04-29 05:09:14 +00:00
jtc 7b4ed4f858 Winning Strategies has placed this code into the Public Domain 1995-04-28 22:59:46 +00:00
jtc 390695fb9c $Id: $ -> $NetBSD: $ 1995-04-28 22:57:54 +00:00
jtc 954b796156 Winning Strategies has placed this code into the Public Domain 1995-04-28 22:53:59 +00:00
jtc a6fa20ea30 Added __flt_rounds, fp{get,set}round. 1995-04-28 21:57:00 +00:00
pk a3fa60161e Preserve the equality "x == y*(x/y)+(x%y)" for negative y; from Lon Willett. 1995-04-22 09:33:49 +00:00
ragge ce0bb6e8d2 Added libc VAX specific files. 1995-04-17 12:23:33 +00:00
jtc 53bd3d0603 Added __flt_rounds, fp{get,set}{mask,round,sticky}. 1995-04-11 18:13:49 +00:00
jtc a0c1305064 Added __flt_rounds, fp{get,set}{mask,round,sticky}. 1995-04-10 21:09:06 +00:00
mycroft ae34e2ea6e Put jtc's notice back, since these are now roughly identical. 1995-04-09 23:32:53 +00:00
mycroft ac11de32c1 Actually, bitfields are faster on the '040; optimize for it, but adjust the
fields so that the mask and sticky bits are the same.
1995-04-09 23:28:38 +00:00
mycroft 99a6cfe734 Rewrite these to use the accrued exception byte for sticky flags, and to
avoid expensive bitfield instructions.
1995-04-09 22:49:26 +00:00
mycroft 10cfe03e6d Stylistic change to match fpsetsticky(). 1995-04-09 21:55:50 +00:00
mycroft 65a1322cd9 Reverse sense of exception bits. 1995-04-09 21:55:20 +00:00
mycroft 42d9c8af6c Oops; need to use fnstenv/fldenv for this. 1995-04-09 21:00:57 +00:00
mycroft a94ab51d20 Fix typo. 1995-04-09 20:44:02 +00:00
mycroft 10b402aa60 Add fpset{mask,round,sticky}(). 1995-04-09 20:33:13 +00:00
mycroft ddbc579aa7 Another optimization. 1995-04-09 19:31:33 +00:00
mycroft 14e246dc4a Optimize. 1995-04-09 19:18:49 +00:00
jtc 907e54c9e9 ENTRY(fpgetmask) -> ENTRY(fpgetsticky) 1995-04-09 19:14:28 +00:00
jtc 1b41528de0 removed commented-out #include <machine/asm.h> 1995-04-09 19:13:26 +00:00
jtc 80bba6a1e1 Added flt_rounds, fpget{round,mask,sticky}. 1995-04-07 14:57:16 +00:00
jtc 30c05ea2b8 Added __flt_rounds(), fp{get,set}{round,mask,sticky}(). 1995-04-07 00:41:43 +00:00
mycroft ce36f636ab Separate machine dependencies. 1995-03-20 14:45:27 +00:00
mycroft 3b5d18b58e SYS_brk -> SYS_break, and other (minor) changes. 1995-03-20 14:02:03 +00:00
pk 7aa7897748 Simplify. 1995-03-11 20:28:59 +00:00
mycroft 4c34be6b52 Clean up deleted files. 1995-03-01 00:00:00 +00:00
cgd 572e3f3188 don't forget inifinity.c 1995-02-25 16:24:22 +00:00
cgd ea1ca14ecb need these for new gen/Makefile 1995-02-25 16:20:12 +00:00
cgd 6929ad87a5 need these now, with new net Makefile.inc 1995-02-25 14:58:43 +00:00
cgd 3f45f31f15 strange corner cases:
(1) zero top 32 bits for 32-bit unsigned ops; 32-bit value can
		be accidentally(?) sign-extended by the compiler/assembler.
	(2) fix return value for mod's that cause traps
1995-02-25 03:09:32 +00:00
jtc e7d917e6eb Remove extra "u" constraint that caused gcc 2.6.3 not to compile this file.
Note that gcc 2.4.5, the compiler we are currently using, still compiles it
correctly after this change.
1995-02-17 06:01:47 +00:00
cgd e4f5181d15 libc support for the alpha. more functions should be written in assembler,
but that's optimization.  8-)
1995-02-10 17:49:48 +00:00
mycroft e90d9fb8a6 Make the coding style more consistent. 1995-02-08 18:33:12 +00:00
mycroft ae5740f063 size_t is unsigned. 1995-02-08 18:15:25 +00:00
mycroft d04155c293 Optimize better. 1995-02-05 14:58:44 +00:00
mellon 1afdb958f0 +Infinity for MIPS 1995-01-18 01:27:24 +00:00
pk 7530512a37 Machine dependent sig{set,long}jmp(). 1995-01-11 20:22:28 +00:00
mycroft f1b3337a0b Need to divide count by 2. 1995-01-07 03:44:55 +00:00
jtc b4bd7fea24 Replaced pops with adds. 1994-12-24 01:16:44 +00:00
jtc 26eccb0a9b Exchange offsets of "saved signal mask" and "signal mask saved" so
that the layout of sigjmp_bufs and jmp_bufs are the same (except
for the "signal mask saved" appended to the end).
1994-12-24 01:05:44 +00:00
mycroft 201fac6e3d More underscores... 1994-12-15 17:24:44 +00:00
dean a51d5c8eef underscore changes 1994-12-12 19:31:22 +00:00
phil eb5168e5dc RCS id format. 1994-12-07 04:47:59 +00:00
dean 820aec410e more underscore changes. 1994-11-28 18:56:40 +00:00
mycroft fcc40a849d If len == 0, then the result must be 0 regardless of the other arguments. 1994-11-24 16:36:35 +00:00
dean 705ee976cf Prepended underscores 1994-11-14 23:48:58 +00:00
dean add2031dcf Prepended underscores 1994-11-14 23:33:46 +00:00
mycroft 2db41a19e7 Use trap gate to enter kernel. 1994-10-26 19:49:42 +00:00
phil c0356ed2a6 New file from Matthias. 1994-10-21 07:28:44 +00:00
phil db01d4c84a fix code for PIC. 1994-10-21 07:13:21 +00:00
mycroft 837f99d25c Clean up deleted files. 1994-10-06 04:38:25 +00:00
mycroft 6ba85483c3 Use bfffo rather than a slow loop. 1994-09-09 03:07:23 +00:00
mycroft af176ad58f Revert this. 1994-08-05 22:35:20 +00:00
chopps 628cf4e2c8 fixed ld.so to properly save all regs when binding PIC functions. We no
longer need the special case (PIC) code to push args when calling cerror.
1994-08-04 05:02:31 +00:00
chopps 03dbf74333 inline call to sigreturn original idea from jason downs <downsj@CSOS.ORST.EDU>
we want this to be done for everything including non-PIC code as longjmp()
does non-standard things with regs and wouldn't like it if the user replaced
the sigreturn() stub.
1994-08-04 05:00:50 +00:00
phil ffdfc8a9b1 patch from Matthias Pfaller. 1994-08-01 19:37:14 +00:00
deraadt b5aa4fdd78 set KMSRCS & friends 1994-06-30 06:46:37 +00:00
phil 535a398e2a _minbrk => minbrk 1994-06-10 22:46:14 +00:00
phil cfb1bf8cc5 quad -1 return value now done right 1994-06-02 20:39:22 +00:00
phil 6536072af7 add missing include 1994-05-27 21:56:04 +00:00
glass ae1bfcddc4 libc support for mips. libkern hooks are disabled 1994-05-24 07:12:09 +00:00
deraadt 4438ac29e5 sigaltstack 1994-05-17 23:56:24 +00:00
chopps a6a8e78548 update to use sigaltstack. 1994-05-10 08:15:57 +00:00
phil 5f26aade17 shared lib support and some clean up. 1994-05-03 20:39:52 +00:00
phil 36d933ca4f quad -1 thing. 1994-04-04 06:54:15 +00:00
mycroft ca01015e04 Clean up deleted files. 1994-04-02 05:37:06 +00:00
cgd b62b3fc050 have cerror DTRT on returns, w.r.t. quads and -1. it needs to be done
here (think of syscall(SYS_lseek,...)).  also, kill bogus lseek thang.
1994-04-02 05:37:04 +00:00
mycroft 345c8ef85c Clean up deleted files. 1994-04-02 05:36:54 +00:00
cgd da34d8a406 have cerror DTRT on returns, w.r.t. quads and -1. it needs to be done
here (think of syscall(SYS_lseek,...)).  also, kill bogus lseek thang.
1994-04-02 05:36:52 +00:00
mycroft d5dbb53fee Set d1 to -1 before cerror. 1994-03-31 18:50:58 +00:00
mycroft b3086b2299 Need to set %edx to -1 before cerror, though perhaps we should have something
more generic for this.
1994-03-31 18:38:57 +00:00
mycroft a3450ab6e8 Add a .text and .align to SYSCALL(). 1994-03-31 18:31:23 +00:00
chopps 2c8fad6100 Need for copy-to-libkern-machdep in ../../Makefile 1994-03-29 07:10:36 +00:00
jtc 98cbb217ac mem -> reg & reg->reg moves take the same time; so save a cycle by reading
the block length from the stack instead of caching it in a register.
1994-03-22 01:15:47 +00:00
mycroft 46a09934d4 Clean up deleted files. 1994-03-22 01:13:11 +00:00
mycroft b05d947874 Clean up deleted files. 1994-03-17 01:58:27 +00:00
jtc 1f29a3d910 Smaller & Faster. 1994-03-16 17:40:23 +00:00
jtc 5ac78ccb34 [hn]to[nh][sl] functions used xchgb %h1,%b1 instead of the faster (on the
i486 & i586) rorw $8, %w1.
1994-03-16 17:34:14 +00:00
jtc 915f7d4d3d Use RCSID macro. 1994-03-12 01:48:26 +00:00
jtc c95cd47ba2 Use RCSID macro for RCS ID's. 1994-03-12 01:39:55 +00:00
phil e69ab544c4 Fixed global var access to be pc relative. 1994-03-09 07:50:56 +00:00
phil 28965bf6db Removing the unnecessary includes of sys/syscall.h. 1994-03-07 23:20:38 +00:00
phil 6cea70fe75 Changing ## to /**/ for use with -traditional mode. 1994-03-04 21:10:12 +00:00
phil dde7045e0d Changing PSR_T to PSL_T. 1994-02-25 07:41:18 +00:00
phil 94303d1113 SYS.h: adding EX()
Makefile.inc: adding a cflag for a compiler that doesn't define ns32k
1994-02-25 07:40:47 +00:00
mycroft 90ff28fef4 Style police. Use `je' and `jne' only on the result of an equality test;
use `jz' and `jnz' in all other cases.
1994-02-14 20:05:52 +00:00
jtc 7f582f99d4 Fix spelling mistake: cashe -> cache. 1994-02-14 17:45:16 +00:00
jtc 01284ad877 Performance improvement from Bruce Evans.
Removes one test instruction for each character.
1994-02-14 17:44:39 +00:00
jtc f28455f783 Use "ror $8,%ax" instead of "xchg %al,%ah": equal on a i386, 1 cycle faster
on a i486, and 2 cycles faster on a iPentium.
1994-02-14 17:43:19 +00:00
pk e0bf9676e9 Insert some Position Independent Code. 1994-02-10 20:15:28 +00:00
chopps 4abc3ff245 handle __STDC__ preprocessor. 1994-02-08 02:31:55 +00:00
jtc 5cffad2151 Use movzbl, not movsbl, to zero extend for unsigned comparison.
Fix from Bruce Evans.
1994-02-07 20:57:05 +00:00
mycroft 48ae66e2eb Use machine/asm.h for ENTRY() macros. 1994-01-30 21:55:52 +00:00
mycroft f5fbffc1f4 Just use definitions from machine/asm.h. 1994-01-29 09:56:54 +00:00
jtc e2c220f94b Fix spelling error in Copyright notice 1994-01-28 20:34:33 +00:00
mycroft 1fe07f186d Separate curbrk and mincrk. 1994-01-27 15:08:03 +00:00
mycroft 3463cb4eef Trivial speedup inspired by SPARC code. 1994-01-27 15:00:49 +00:00
mycroft c25c219087 Random cleanup. 1994-01-27 14:45:52 +00:00
mycroft ef980f76fe One last tweak. 1994-01-27 06:53:25 +00:00
mycroft 22e614ce10 Random cleanup. 1994-01-27 06:34:59 +00:00
mycroft 9c8862a970 Pedanticism. 1994-01-27 06:34:02 +00:00
mycroft 3cf1bd9939 SYS_brk --> SYS_break. Where's my axe? 1994-01-27 04:30:34 +00:00
mycroft 17b2a501cd Stylistic changes. 1994-01-27 04:16:50 +00:00
mycroft 0496df7164 More stylistic changes. 1994-01-27 04:14:50 +00:00
mycroft e84d8b28f3 Stylistic changes. 1994-01-27 04:10:20 +00:00
mycroft b6b0ec3424 Fix bug jtc introduced. 1994-01-27 04:07:13 +00:00
jtc 7835a85a78 Optimization tweaks:
Use testl %reg,%reg instead of cmpl $0,%reg
Use xorl  %reg,%reg instead of movl $0,%reg
1994-01-24 19:24:36 +00:00
deraadt 6fcc6b7f39 ## and /**/ 1994-01-23 07:26:16 +00:00
pk 939f7033c5 Make it work with old-style (/usr/bin) cpp 1994-01-15 20:19:43 +00:00
pk 39c0326588 PIC_*() macros moved to <machine/asm.h> 1994-01-07 00:48:22 +00:00
jtc 0e09f939b2 Fix bug #24 by renaming _logname_valid to __logname_valid. 1993-12-18 01:02:47 +00:00
mycroft cc81da7447 Shorten setup for longword operations a little. 1993-12-10 10:51:11 +00:00
mycroft dca61f6f90 Share code. 1993-12-10 10:45:18 +00:00
jtc a9e5cc4f83 No reason these can't share code... 1993-12-08 22:10:14 +00:00
mycroft cd8e1bd162 No reason these can't share code... 1993-12-08 21:01:56 +00:00
pk 230b816542 Use %hi operator when fiddling a bit high... 1993-12-08 18:33:43 +00:00
pk ca6c5f72ae Fix location of sources -> arch/sparc 1993-12-08 13:30:16 +00:00
pk d1639c316e Use sigstack() in stead of sigaltstack() until we have a sigaltstack()
in the kernel.
1993-12-08 11:25:12 +00:00
mycroft 1f063d60c0 Fix a bug, and speed up by a few cycles. 1993-12-07 06:58:35 +00:00
mycroft 2c216884a8 Fix typo. 1993-12-07 03:28:53 +00:00
mycroft 6103136f3b Fix typo. 1993-12-07 02:05:27 +00:00
mycroft ca4372787c Fix a couple of nits. 1993-12-06 23:45:48 +00:00
pk f3f7594fc9 Use PIC_PLT for error returns.
Correct operand order in accessing `minbrk' and `curbrk'.
1993-12-06 23:28:08 +00:00
pk 417e7a6fff Remove spurious PIC_EPILOGUE and PIC_GOTOFF macros. 1993-12-06 23:27:04 +00:00