This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RFA: Patch: Change FRV 'mdrotli' instruction to accept a signedimmediate


Hi Dave,

  Any objections to my applying the patch below ?  It changes the
  mdrotli instruction for the FRV port so that it accepts a signed
  immediate value instead of an unsigned one.  According to Fujitsu
  this is the correct behaviour.  (See Issue #23199 for more
  details).  I could not find an FRV ISA anywhere on the web to
  confirm this, but I assume that they are correct.

Cheers
        Nick

cgen/ChangeLog        
2003-06-03  Nick Clifton  <nickc@redhat.com>

	* cpu/frv.cpu (media-dual-word-rotate-r-r): Use a signed 6-bit
	immediate value not unsigned.

opcodes/ChangeLog        
2003-06-03  Nick Clifton  <nickc@redhat.com>

	* frv-desc.c: Regenerate.
	* frv-opc.c: Regenerate.


Index: cgen/cpu/frv.cpu
===================================================================
RCS file: /cvs/src/src/cgen/cpu/frv.cpu,v
retrieving revision 1.1
diff -c -3 -p -r1.1 frv.cpu
*** cgen/cpu/frv.cpu	18 Jun 2002 21:12:33 -0000	1.1
--- cgen/cpu/frv.cpu	3 Jun 2003 14:11:16 -0000
***************
*** 6643,6658 ****
    (dni name
         (comment)
         ((UNIT FM0) (MACH fr400) (FR400-MAJOR M-2))
!        (.str name "$pack $FRinti,$u6,$FRintk")
!        (+ pack FRintk op FRinti ope u6)
         (if (orif (register-unaligned FRinti 2)
  		 (register-unaligned FRintk 2))
  	   (c-call VOID "@cpu@_media_register_not_aligned")
  	   (sequence ()
! 		     (set FRintk (operation FRinti (and u6 #x1f)))
  		     (set (nextreg h-fr_int FRintk 1)
  			  (operation (nextreg h-fr_int FRinti 1)
! 				     (and u6 #x1f)))))
         ((fr400 (unit u-media-3-quad)))
    )
  )
--- 6643,6658 ----
    (dni name
         (comment)
         ((UNIT FM0) (MACH fr400) (FR400-MAJOR M-2))
!        (.str name "$pack $FRinti,$s6,$FRintk")
!        (+ pack FRintk op FRinti ope s6)
         (if (orif (register-unaligned FRinti 2)
  		 (register-unaligned FRintk 2))
  	   (c-call VOID "@cpu@_media_register_not_aligned")
  	   (sequence ()
! 		     (set FRintk (operation FRinti (and s6 #x1f)))
  		     (set (nextreg h-fr_int FRintk 1)
  			  (operation (nextreg h-fr_int FRinti 1)
! 				     (and s6 #x1f)))))
         ((fr400 (unit u-media-3-quad)))
    )
  )
        


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]