This is the mail archive of the binutils@sourceware.org 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]

Re: [MIPS] Add new virtualization instructions


"Pinski, Andrew" <Andrew.Pinski@caviumnetworks.com> writes:
> Sorry it took a little longer as I noticed I forgot to update the
> documentation for the new option.

Gah, so I missed both that and the MIPS_CPU_FLOAT_OPS_NONE thing :-(
Just as well you and David are on the ball.

> I had to add a new option to the disassembler to turn on disassembling
> these instructions as -mips:octeon does not turn on these
> instructions.

Sounds like a good idea.  I see mips_isa is always known by this point,
which is nice...

> The main reason why I did not merge in the comment about the flags is
> because there was two comments talking about the flags which had the
> same pattern; I just copied what was done already.

Well, in that case, let's replace the whole:

  /* Set MIPS ELF flags for ASEs.  */
  /* We may need to define a new flag for DSP ASE, and set this flag when
     file_ase_dsp is true.  */
  /* Same for DSP R2.  */
  /* We may need to define a new flag for MT ASE, and set this flag when
     file_ase_mt is true.  */

with:

  /* Set MIPS ELF flags for ASEs.  Note that not all ASEs have flags
     defined at present; this might need to change in future.  */

> Index: gas/testsuite/gas/mips/virt64.s
> ===================================================================
> RCS file: gas/testsuite/gas/mips/virt64.s
> diff -N gas/testsuite/gas/mips/virt64.s
> --- /dev/null	1 Jan 1970 00:00:00 -0000
> +++ gas/testsuite/gas/mips/virt64.s	9 May 2013 22:28:23 -0000
> @@ -0,0 +1,27 @@
> +	.text
> +	.set noreorder
> +
> +foo:
> +	dmfgc0   $3,$29
> +        dmfgc0   $11,$20,5
> +        dmtgc0   $23,$2
> +        dmtgc0   $7,$14,2
> +
> +	mfgc0   $3,$29
> +        mfgc0   $11,$20,5
> +        mtgc0   $23,$2
> +        mtgc0   $7,$14,2
> +
> +	hypcall
> +	hypcall 0x256
> +
> +	tlbginv
> +	tlbginvf
> +	tlbgp
> +	tlbgr
> +	tlbgwi
> +	tlbgwr
> +
> +# Force at least 8 (non-delay-slot) zero bytes, to make 'objdump' print ...
> +	.align	2
> +	.space	8

I think this test should only include the DM[FT]GC0 instructions.
The others will be tested for mips64r2 via the "virt" test.

OK with those changes, thanks.

Richard


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