Hello,
I made an unsuccessfull search on the m-l archive about this problem, so
now I'm going to report it in the developing m-l.
I own a Cyrix III processor (400 Mhz up to 800Mhz) on a via chipset
motherboard. When I boot with a kernel compiled for Cyrix processor or
with a 686 pentium the lilo gets the images, put it on memory and
decompress it, but when it has to boot (after the "Loading
mlinuz..........") it always reboot the computer.
I've found out that the Cyrix III has no CMOV instruction and that this
could be the problem.
So I compiled a pentium mmx version (after mrproper and dep) and all
worked fine.
My question is: ok, it can't work if 686 compiled, but why does not it
work also for the Cyrix III version?
I tried a "vanilla" kernel and some htb pathced one.
kernel versions: 2.4.19 and 2.4.20.
hope my report will help
keep up the good work
feel free to contact me
bye
c1cc10
--
pub 1024D/76A9AC52 2002-12-13 ciunociciunozero (PORCODIO) <[email protected]>
Key fingerprint = 64A9 9498 B297 B49F D676 AAA1 9DA9 CABA 76A9 AC52
sub 2048g/F248FA79 2002-12-13 [expires: 2004-12-12]
On Fri, Feb 07, 2003 at 02:50:02PM +0000, c1cc10 wrote:
> I've found out that the Cyrix III has no CMOV instruction and that this
> could be the problem.
> So I compiled a pentium mmx version (after mrproper and dep) and all
> worked fine.
> My question is: ok, it can't work if 686 compiled, but why does not it
> work also for the Cyrix III version?
The CyrixIII compile option should not generate cmov.
If you can objdump -D vmlinuz and grep for cmov, and find out
where thats being generated to confirm that it is that could be useful.
Which gcc did you use? And (silly question), did you make mrproper
before building the cyrix3 kernel ? If there were left behind .o
files, that could confuse it. Possibly ccache too.
if you were using that rm -rf ~/.ccache to be sure.
as a sidenote, the new C3s (Nehemiah) now have CMOV.
Dave
--
| Dave Jones. http://www.codemonkey.org.uk
| SuSE Labs
Dave Jones wrote:
> On Fri, Feb 07, 2003 at 02:50:02PM +0000, c1cc10 wrote:
> > I've found out that the Cyrix III has no CMOV instruction and that this
> > could be the problem.
> > So I compiled a pentium mmx version (after mrproper and dep) and all
> > worked fine.
> > My question is: ok, it can't work if 686 compiled, but why does not it
> > work also for the Cyrix III version?
>
> The CyrixIII compile option should not generate cmov.
> If you can objdump -D vmlinuz and grep for cmov, and find out
^^^^^^^ -> vmlinux-2.4.20
> as a sidenote, the new C3s (Nehemiah) now have CMOV.
but no 3dnow so older C3 specific kernels don't work!
P?draig.
On Fri, 2003-02-07 at 14:50, c1cc10 wrote:
> I've found out that the Cyrix III has no CMOV instruction and that this
> could be the problem.
It is
gcc told to build for i686 assumes that cmov is present. Much of the
code advantage for i686 comes from cmov so it makes sense to do that
I guess.
The optimal kernel for the CyrixIII/VIA-C3 is the the Cyrix III/VIA-C3
option in current kernel menus, or i486
Alan
On Fri, Feb 07, 2003 at 02:17:39PM +0000, [email protected] wrote:
> >as a sidenote, the new C3s (Nehemiah) now have CMOV.
> but no 3dnow so older C3 specific kernels don't work!
Yep. Dropped in favour of SSE. I have a patch to add an extra
config option for the C3-2. It's going to Linus/Marcelo later
this afternoon.
Dave
--
| Dave Jones. http://www.codemonkey.org.uk
| SuSE Labs
Dave Jones wrote:
> Which gcc did you use? And (silly question), did you make mrproper
> before building the cyrix3 kernel ? If there were left behind .o
> files, that could confuse it. Possibly ccache too.
> if you were using that rm -rf ~/.ccache to be sure.
ok, I'll jump directly to the point: I did not make any mrproper.
after your answer I tried and it worked.
sorry for the false alarm
c1cc10
--
pub 1024D/76A9AC52 2002-12-13 ciunociciunozero (PORCODIO) <[email protected]>
Key fingerprint = 64A9 9498 B297 B49F D676 AAA1 9DA9 CABA 76A9 AC52
sub 2048g/F248FA79 2002-12-13 [expires: 2004-12-12]
Followup to: <[email protected]>
By author: Alan Cox <[email protected]>
In newsgroup: linux.dev.kernel
>
> On Fri, 2003-02-07 at 14:50, c1cc10 wrote:
> > I've found out that the Cyrix III has no CMOV instruction and that this
> > could be the problem.
>
> It is
>
> gcc told to build for i686 assumes that cmov is present. Much of the
> code advantage for i686 comes from cmov so it makes sense to do that
> I guess.
>
Yep. The other name for the option, -mach=pentiumpro, really is the
more proper name.
-hpa
--
<[email protected]> at work, <[email protected]> in private!
"Unix gives you enough rope to shoot yourself in the foot."
Architectures needed: cris ia64 m68k mips64 ppc ppc64 s390 s390x sh v850 x86-64