Fix a sign-extension botch for ILP32.

This commit is contained in:
scw 2002-10-19 08:54:23 +00:00
parent 0e1af8ca62
commit 921743eed1
2 changed files with 7 additions and 9 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: scanc.S,v 1.1 2002/10/17 11:53:33 scw Exp $ */
/* $NetBSD: scanc.S,v 1.2 2002/10/19 08:54:23 scw Exp $ */
/*
* Copyright 2002 Wasabi Systems, Inc.
@ -42,12 +42,11 @@
*/
ENTRY(scanc)
#ifndef _LP64
addz.l r2, r63, r2
add.l r3, r63, r3
add.l r4, r63, r4
addz.l r2, r3, r2 /* r2 = &cp[size] */
#else
add r2, r3, r2 /* r2 = &cp[size] */
#endif
add r2, r3, r2 /* r2 = &cp[size] */
pta/l 1f, tr1
pta/u 2f, tr2
ptabs/u r18, tr0

View File

@ -1,4 +1,4 @@
/* $NetBSD: skpc.S,v 1.1 2002/10/17 11:53:33 scw Exp $ */
/* $NetBSD: skpc.S,v 1.2 2002/10/19 08:55:00 scw Exp $ */
/*
* Copyright 2002 Wasabi Systems, Inc.
@ -43,13 +43,12 @@
* XXX: Room for some optimising here, specifically to use quad loads.
*/
ENTRY(skpc)
andi r2, 0xff, r2
#ifndef _LP64
add.l r4, r63, r4
addz.l r3, r4, r3 /* r3 = &cp[size] */
#else
add r3, r4, r3 /* r3 = &cp[size] */
addz.l r3, r63, r3
#endif
andi r2, 0xff, r2
add r3, r4, r3 /* r3 = &cp[size] */
pta/l 1f, tr1
pta/u 2f, tr2
ptabs/u r18, tr0