Home | History | Annotate | only in /src/common/lib/libc/arch/m68k/gen
History log of /src/common/lib/libc/arch/m68k/gen
RevisionDateAuthorComments
 1.6 18-Mar-2014  riastradh branches: 1.6.26;
Merge riastradh-drm2 to HEAD.
 1.5 18-Jul-2013  matt Adjust for Coldfire
 1.4 16-Jul-2013  matt branches: 1.4.2;
Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 19-Sep-2007  he branches: 1.2.28; 1.2.34;
Improve consistency between <sys/bswap.h> and what's actually
defined by the C library for the various m68k ports by borrowing
some #ifs from the i386 port.

Also, align sun2 with the other m68k ports as to whether they
define __bswap{16,32} or bswap{16,32} in their C library (all
now define the __ variants).

This should make the m68k ports build sys/rump again, except
for sun2 which hits another problem later on.
 1.1 20-Dec-2005  christos branches: 1.1.18;
Merge libkern + libc common files. As requested by core.
 1.1.18.1 06-Nov-2007  matt sync with HEAD
 1.2.34.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.28.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.2.1 23-Jul-2013  riastradh sync with HEAD
 1.6.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.6.26.1 21-Apr-2020  martin Sync with HEAD
 1.6 18-Mar-2014  riastradh branches: 1.6.26;
Merge riastradh-drm2 to HEAD.
 1.5 18-Jul-2013  matt Adjust for Coldfire
 1.4 16-Jul-2013  matt branches: 1.4.2;
Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 19-Sep-2007  he branches: 1.2.28; 1.2.34;
Improve consistency between <sys/bswap.h> and what's actually
defined by the C library for the various m68k ports by borrowing
some #ifs from the i386 port.

Also, align sun2 with the other m68k ports as to whether they
define __bswap{16,32} or bswap{16,32} in their C library (all
now define the __ variants).

This should make the m68k ports build sys/rump again, except
for sun2 which hits another problem later on.
 1.1 20-Dec-2005  christos branches: 1.1.18;
Merge libkern + libc common files. As requested by core.
 1.1.18.1 06-Nov-2007  matt sync with HEAD
 1.2.34.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.28.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.2.1 23-Jul-2013  riastradh sync with HEAD
 1.6.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.6.26.1 21-Apr-2020  martin Sync with HEAD
 1.5 18-Mar-2014  riastradh branches: 1.5.26;
Merge riastradh-drm2 to HEAD.
 1.4 18-Jul-2013  matt Adjust for Coldfire
 1.3 16-Jul-2013  matt branches: 1.3.2;
Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.2 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.1 20-Dec-2005  christos branches: 1.1.50; 1.1.56;
Merge libkern + libc common files. As requested by core.
 1.1.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.1.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.3.2.1 23-Jul-2013  riastradh sync with HEAD
 1.5.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.5.26.1 21-Apr-2020  martin Sync with HEAD
 1.6 22-Apr-2020  rin Restrict usage of m68k assembler versions of {,u}divsi3 and {,u}divsi3 to
kernel and bootloader for 68010.

They requires a special calling convention to udivsi3, and cannot to be
mixed up in normal routines provided by libgcc or compiler_rt. Although,
there's no problem for using them in a controlled situation, i.e., kernel
and standalone programs.

Note that this does not affect at all m68k ports other than sun2, since
codes generated by gcc do not call these routines.

Assembler files are moved from common/lib/libc/arch/m68k/gen to
sys/lib/libkern/arch/m68k in order not to be compiled in libc.

Revert hack introduced to lib/libc/compiler_rt/Makefile.inc rev 1.37:
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/compiler_rt/Makefile.inc#rev1.37

Proposed on port-sun2@ with no response...
(Again, this does not affect m68k ports other than sun2.)
http://mail-index.netbsd.org/port-sun2/2020/03/10/msg000102.html
 1.5 07-Sep-2013  chs branches: 1.5.26; 1.5.34;
switch to ELF naming for local labels.
 1.4 16-Jul-2013  matt Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 05-Jan-2006  he branches: 1.2.50; 1.2.56;
Add the m68010 versions of the integer multiply divide, modulo,
and multiply functions from the old libkern. The m68010 versions
are only compiled when __mc68010__ is defined, presently that's
only done when building for sun2.

Reviewed by christos.
 1.1 20-Dec-2005  christos Merge libkern + libc common files. As requested by core.
 1.2.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.34.1 25-Apr-2020  bouyer Sync with HEAD
 1.5.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.5.26.1 21-Apr-2020  martin Sync with HEAD
 1.8 22-Apr-2020  rin Restrict usage of m68k assembler versions of {,u}divsi3 and {,u}divsi3 to
kernel and bootloader for 68010.

They requires a special calling convention to udivsi3, and cannot to be
mixed up in normal routines provided by libgcc or compiler_rt. Although,
there's no problem for using them in a controlled situation, i.e., kernel
and standalone programs.

Note that this does not affect at all m68k ports other than sun2, since
codes generated by gcc do not call these routines.

Assembler files are moved from common/lib/libc/arch/m68k/gen to
sys/lib/libkern/arch/m68k in order not to be compiled in libc.

Revert hack introduced to lib/libc/compiler_rt/Makefile.inc rev 1.37:
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/compiler_rt/Makefile.inc#rev1.37

Proposed on port-sun2@ with no response...
(Again, this does not affect m68k ports other than sun2.)
http://mail-index.netbsd.org/port-sun2/2020/03/10/msg000102.html
 1.7 04-Mar-2014  matt branches: 1.7.26; 1.7.34;
Make this coldfire compatible
 1.6 07-Sep-2013  chs switch to ELF naming for local labels.
 1.5 16-Jul-2013  matt Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.4 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.3 13-Jan-2006  christos branches: 1.3.50; 1.3.56;
fix the mc68010 case.
 1.2 05-Jan-2006  he Add the m68010 versions of the integer multiply divide, modulo,
and multiply functions from the old libkern. The m68010 versions
are only compiled when __mc68010__ is defined, presently that's
only done when building for sun2.

Reviewed by christos.
 1.1 20-Dec-2005  christos Merge libkern + libc common files. As requested by core.
 1.3.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.3.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.34.1 25-Apr-2020  bouyer Sync with HEAD
 1.7.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.7.26.1 21-Apr-2020  martin Sync with HEAD
 1.2 31-May-2020  rin Fix typo in comment.
 1.1 31-May-2020  rin Add m68k assembler version of __muldi3().

This is intended for 68060:
- GCC does not emit __muldi3() for 68020-40, that have 32 * 32 --> 64 mulul
- mulsl (and moveml), used in this code, are not implemented for 68010

In comparison with that from compiler_rt, this version saves:
- 12% of processing time
- 12 bytes of stack
- 50 bytes of code size
Also, slightly faster, memory saving, and smaller than libgcc version.

By examining with evcnt(9), __muldi3() is invoked more than 1000 times per
sec by kernel, which should justify to introduce assembler version of this
function.
 1.5 09-Mar-2020  rin Remove wrong comment (copy-paste from somewhere);
__mulsi3 does not depend on __udivsi3.
 1.4 16-Jul-2013  matt branches: 1.4.28;
Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 05-Jan-2006  he branches: 1.2.50; 1.2.56;
Add the m68010 versions of the integer multiply divide, modulo,
and multiply functions from the old libkern. The m68010 versions
are only compiled when __mc68010__ is defined, presently that's
only done when building for sun2.

Reviewed by christos.
 1.1 20-Dec-2005  christos Merge libkern + libc common files. As requested by core.
 1.2.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.28.3 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.4.28.2 21-Apr-2020  martin Sync with HEAD
 1.4.28.1 08-Apr-2020  martin Merge changes from current as of 20200406
 1.5 22-Apr-2020  rin Restrict usage of m68k assembler versions of {,u}divsi3 and {,u}divsi3 to
kernel and bootloader for 68010.

They requires a special calling convention to udivsi3, and cannot to be
mixed up in normal routines provided by libgcc or compiler_rt. Although,
there's no problem for using them in a controlled situation, i.e., kernel
and standalone programs.

Note that this does not affect at all m68k ports other than sun2, since
codes generated by gcc do not call these routines.

Assembler files are moved from common/lib/libc/arch/m68k/gen to
sys/lib/libkern/arch/m68k in order not to be compiled in libc.

Revert hack introduced to lib/libc/compiler_rt/Makefile.inc rev 1.37:
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/compiler_rt/Makefile.inc#rev1.37

Proposed on port-sun2@ with no response...
(Again, this does not affect m68k ports other than sun2.)
http://mail-index.netbsd.org/port-sun2/2020/03/10/msg000102.html
 1.4 16-Jul-2013  matt branches: 1.4.28; 1.4.36;
Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 05-Jan-2006  he branches: 1.2.50; 1.2.56;
Add the m68010 versions of the integer multiply divide, modulo,
and multiply functions from the old libkern. The m68010 versions
are only compiled when __mc68010__ is defined, presently that's
only done when building for sun2.

Reviewed by christos.
 1.1 20-Dec-2005  christos Merge libkern + libc common files. As requested by core.
 1.2.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.4.36.1 25-Apr-2020  bouyer Sync with HEAD
 1.4.28.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.4.28.1 21-Apr-2020  martin Sync with HEAD
 1.6 22-Apr-2020  rin Restrict usage of m68k assembler versions of {,u}divsi3 and {,u}divsi3 to
kernel and bootloader for 68010.

They requires a special calling convention to udivsi3, and cannot to be
mixed up in normal routines provided by libgcc or compiler_rt. Although,
there's no problem for using them in a controlled situation, i.e., kernel
and standalone programs.

Note that this does not affect at all m68k ports other than sun2, since
codes generated by gcc do not call these routines.

Assembler files are moved from common/lib/libc/arch/m68k/gen to
sys/lib/libkern/arch/m68k in order not to be compiled in libc.

Revert hack introduced to lib/libc/compiler_rt/Makefile.inc rev 1.37:
http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/compiler_rt/Makefile.inc#rev1.37

Proposed on port-sun2@ with no response...
(Again, this does not affect m68k ports other than sun2.)
http://mail-index.netbsd.org/port-sun2/2020/03/10/msg000102.html
 1.5 04-Mar-2014  matt branches: 1.5.26; 1.5.34;
Make this work with coldfire.
 1.4 16-Jul-2013  matt Add END(func)
Fix some straggling %r@<eol> to (%r)
 1.3 16-Jul-2013  matt Convert to normal Motorola syntax for addressing.
%r@ -> (%r)
%r@- -> -(%r)
%r@+ -> (%r)+
%r@(n) n(%r)
etc.
No object differences.
 1.2 05-Jan-2006  he branches: 1.2.50; 1.2.56;
Add the m68010 versions of the integer multiply divide, modulo,
and multiply functions from the old libkern. The m68010 versions
are only compiled when __mc68010__ is defined, presently that's
only done when building for sun2.

Reviewed by christos.
 1.1 20-Dec-2005  christos Merge libkern + libc common files. As requested by core.
 1.2.56.1 19-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.2.50.1 22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.5.34.1 25-Apr-2020  bouyer Sync with HEAD
 1.5.26.2 21-Apr-2020  martin Ooops, restore accidently removed files from merge mishap
 1.5.26.1 21-Apr-2020  martin Sync with HEAD

RSS XML Feed