Commit Graph

72 Commits

Author SHA1 Message Date
eeh 1a0ae8c9f0 Improved version of bzero. 2001-08-02 01:17:28 +00:00
eeh 5dd57287be Fix some corner cases. 2001-08-01 16:45:20 +00:00
eeh 685a79bb36 Use unsigned compares for addresses. 2001-08-01 05:52:12 +00:00
thorpej f98eeabaa2 sparc64 version, cloned (har har!) from the sparc version and tweaked. 2001-07-23 07:35:44 +00:00
thorpej fed292651f From rev. 1.11 of the 32-bit version:
Add a macro "CALL()" to call a function correctly in the pic and non pic
case. Write ERROR() in terms of call.
2001-07-23 07:26:50 +00:00
eeh b4b1b3f3d7 Replace bzero.S and bcopy.S with memset.S and memcpy.S to make the makefiles
happy.
2001-07-07 04:55:21 +00:00
eeh 227671f79e Fix more boundary issues. 2001-07-05 19:09:24 +00:00
eeh 8617fb9c54 Fix some boundary condition issues. 2001-07-05 06:29:49 +00:00
eeh 81fff01d8c Re-enable block insns for cahe issues. 2001-07-04 20:18:30 +00:00
eeh 093cf4f3b1 Re-enable block insns since they don't allocate in the caches. 2001-07-04 20:16:17 +00:00
eeh 64c6d98716 Disable slower VIS version. 2001-07-04 05:51:06 +00:00
eeh a6d4aabed4 Fix return value and fetches beyond the source range that could cause
segmentation faults in some cases.  And disable the VIS version which
seems to be slower.
2001-07-04 05:44:56 +00:00
eeh c7b881788f Oops. Fix typo. 2001-07-01 22:48:30 +00:00
eeh 0abcba55b7 I seem to have stumbled on an even faster bcopy implementation.... 2001-07-01 22:19:51 +00:00
eeh 4acdda21fd Add an optimized asssembly bcopy/memcpy. 2001-06-30 00:10:48 +00:00
eeh 6541f113b9 Add an assembly version of memset(3). 2001-06-21 22:41:55 +00:00
chs 77b0e1dfba adjust the PIC case for ERROR() to handle __cerror being at a larger offset
than will fit in the immediate field of the LDX instruction.
2001-06-15 01:09:50 +00:00
eeh 4fd3b89e58 Removed unused PIC setup code. 2001-05-13 20:02:13 +00:00
eeh e21d458f48 Don't flush the zero-ed data from the cache. 2001-02-10 23:35:41 +00:00
martin 772baecb3a Add simple __syscall.S to make libc compile on sparc64 again. 2000-12-13 20:25:04 +00:00
eeh 5d73d71676 Fix modf() (I hope. Can't be any worse than the old version.) 2000-11-01 23:32:41 +00:00
kleink 82fd76bb06 Need an internal name for pipe(2). 2000-09-28 08:38:53 +00:00
msaitoh f9b799b651 check LIBC_SCCS 2000-09-13 22:32:25 +00:00
eeh d3312c2719 Fix layout of fields in jmp_buf. [N.B. we could make JMP_BUFLEN 9 if we want.] 2000-08-28 00:45:59 +00:00
eeh 9c2bf87977 Need to reserve a full 64-bit stackframe, not a 32-bit one. 2000-07-26 00:53:50 +00:00
mycroft 01a39929fc Store the whole 64-bit pointer... 2000-07-25 20:15:40 +00:00
mycroft fb41c8728c Use cpp comment style. 2000-07-25 15:14:45 +00:00
mycroft c54917029b Make __dtoul() actually DTRT. The calling convention was totally wrong, and
the `big' value should be 2^63, not 2^31.
Also, nuke __fixunsdfsi(), since this is never output by the sparc64 compiler.
2000-07-25 04:26:12 +00:00
mycroft 4272204d8d Offset the %i2 stack slot from %sp, not %fp. Otherwise we may modify the
caller's registers!
2000-07-24 15:36:49 +00:00
mycroft fc590aafb4 There's no good reason not to assume a 64-bit stack here. 2000-07-24 15:24:55 +00:00
mycroft eded30220a Don't bother saving %f16-%f31, since we don't use them. 2000-07-24 07:30:54 +00:00
mycroft b3e75eb4ed _errno -> __errno 2000-07-24 00:11:10 +00:00
mycroft e740400671 Just use a store/load pair to get the pattern into the FP reg. This eliminates
a bunch of cruft and avoids using a v9a instruction.
In addition, eliminate 8 of the fmovda's, which we are not using the result of
anyway.
Net result is that this should be faster in all cases.
2000-07-23 20:34:07 +00:00
eeh 32ceb997a8 Fix stack BIAS issues. 2000-07-23 07:12:22 +00:00
eeh e507cc60e6 Update some more assembly code for PIC issues. 2000-07-21 03:14:15 +00:00
eeh 067b7521b5 Fix PIC bugs. 2000-07-18 22:38:11 +00:00
eeh 1b72cecb45 Block align pointer *AFTER* fixing up possible stack bias. 2000-07-08 16:02:15 +00:00
itohy af83a97717 Add special treatment of shmat(2).
On m68k ELF calling standard (__SVR4_ABI__), if a function
returns a pointer, the return value should go to a0 as well as d0.
2000-07-07 08:20:50 +00:00
kleink b8a4d7adf9 Need an internal name for fork(). 2000-06-26 06:32:54 +00:00
kleink 2234f31b26 Add a _SYSCALL(entry,syscall) macro like the one found on other
architectures.
2000-06-26 06:31:37 +00:00
kleink 15bc7ed349 Thinko in previous: we do always use an internal name. 2000-06-26 06:25:36 +00:00
kleink 03f996bd0c Add internal names for brk() and sbrk(). 2000-06-23 15:40:36 +00:00
kleink e4d7c2e329 Add ISO C99 long long integer general utility interfaces; partially addresses
PR standards/9482.
2000-03-06 18:32:22 +00:00
mycroft c26054b799 Delint. 2000-01-22 22:40:58 +00:00
eeh 0ba088f0a3 New bzero() using block store insns. 1999-12-30 15:31:39 +00:00
eeh d1b815fe32 Sample code to implement ffs() using the popc insn (if it's ever implemented). 1999-12-30 15:30:26 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
mycroft b3b07a4c6e Another microoptimization. Take advantage of the addition already having set
the flags for the <=0 comparison.
1999-08-30 18:28:24 +00:00
mycroft 0560606383 Reuse the trick of loading 0.0 (rather than 1.0) and then modifying the
exponent.  It's a bit faster on some machines.
1999-08-30 18:01:40 +00:00
augustss 75d2dfe657 Remove more unused mulexp variables. 1999-08-30 15:11:32 +00:00