larus@CS.WISC.EDU (James Larus) (11/23/89)
The diff's for mips.md in my previous message (about the bug with
immediate constants) were incorrect. The correct set are below.
/Jim
primost 1291% rcsdiff -c -r1.1 mips.md
===================================================================
RCS file: RCS/mips.md,v
retrieving revision 1.1
diff -c -r1.1 mips.md
*** /tmp/,RCSt1a12822 Wed Nov 22 12:32:50 1989
--- mips.md Wed Nov 22 12:32:21 1989
***************
*** 528,534 ****
(define_insn "andsi3"
[(set (match_operand:SI 0 "general_operand" "=r,&r")
(and:SI (match_operand:SI 1 "general_operand" "%r,r")
! (match_operand:SI 2 "general_operand" "rJ,I")))]
""
"*
{
--- 528,534 ----
(define_insn "andsi3"
[(set (match_operand:SI 0 "general_operand" "=r,&r")
(and:SI (match_operand:SI 1 "general_operand" "%r,r")
! (match_operand:SI 2 "general_operand" "rJ,K")))]
""
"*
{
***************
*** 535,541 ****
rtx xops[3];
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'I'))
if (INTVAL (operands[2]) >= 0)
{
return \"andi\\t%0,%1,%x2\\t#andsi3\\t%1,%d2 -> %0\";
--- 535,541 ----
rtx xops[3];
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'K'))
if (INTVAL (operands[2]) >= 0)
{
return \"andi\\t%0,%1,%x2\\t#andsi3\\t%1,%d2 -> %0\";
***************
*** 607,619 ****
(define_insn "iorsi3"
[(set (match_operand:SI 0 "general_operand" "=r")
(ior:SI (match_operand:SI 1 "general_operand" "%r")
! (match_operand:SI 2 "general_operand" "rIJ")))]
""
"*
{
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'I'))
{
return \"ori\\t%0,%1,%x2\\t#iorsi3\\t%1,%d2 -> %0\";
}
--- 607,619 ----
(define_insn "iorsi3"
[(set (match_operand:SI 0 "general_operand" "=r")
(ior:SI (match_operand:SI 1 "general_operand" "%r")
! (match_operand:SI 2 "general_operand" "rKJ")))]
""
"*
{
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'K'))
{
return \"ori\\t%0,%1,%x2\\t#iorsi3\\t%1,%d2 -> %0\";
}
***************
*** 669,681 ****
(define_insn "xorsi3"
[(set (match_operand:SI 0 "general_operand" "=r")
(xor:SI (match_operand:SI 1 "general_operand" "%r")
! (match_operand:SI 2 "general_operand" "rIJ")))]
""
"*
{
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'I'))
{
return \"xori\\t%0,%1,%x2\\t#xorsi3\\t%1,%d2 -> %0\";
}
--- 669,681 ----
(define_insn "xorsi3"
[(set (match_operand:SI 0 "general_operand" "=r")
(xor:SI (match_operand:SI 1 "general_operand" "%r")
! (match_operand:SI 2 "general_operand" "rKJ")))]
""
"*
{
if (GET_CODE (operands[2]) == CONST_INT)
{
! if (CONST_OK_FOR_LETTER_P (INTVAL (operands[2]), 'K'))
{
return \"xori\\t%0,%1,%x2\\t#xorsi3\\t%1,%d2 -> %0\";
}
primost 1292%