[mips][sched] Split IIArith in preparation for the first scheduler targeting a specif...
authorDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 16 Jan 2014 14:27:20 +0000 (14:27 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 16 Jan 2014 14:27:20 +0000 (14:27 +0000)
commit7bc4a7ced6ee902ad92b5a8b032581f0c1dc52db
tree8c8e71f36eb389611dbaa866dea09384151f0850
parent31505363ca5375ce37c240261cc2289b0902b986
[mips][sched] Split IIArith in preparation for the first scheduler targeting a specific MIPS CPU.

IIArith -> II_ADD, II_ADDU, II_AND, II_CL[ZO], II_DADDIU, II_DADDU,
  II_DROTR, II_DROTR32, II_DROTRV, II_DSLL, II_DSLL32, II_DSLLV,
  II_DSR[AL], II_DSR[AL]32, II_DSR[AL]V, II_DSUBU, II_LUI, II_MOV[ZFNT],
  II_NOR, II_OR, II_RDHWR, II_ROTR, II_ROTRV, II_SLL, II_SLLV, II_SR[AL],
  II_SR[AL]V, II_SUBU, II_XOR

No functional change since the InstrItinData's have been duplicated.

This is necessary because the classes are shared between all schedulers.

Once this patch series is committed there will be an InstrItinClass for
each mnemonic with minimal grouping. This does increase the size of the
itinerary tables for each MIPS scheduler but we have a few options for dealing
with that later. These options include reducing the number of classes once
we see the best way to simplify them, or by extending tablegen to be able
to compress the table by eliminating duplicates entries, etc.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@199391 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MicroMipsInstrInfo.td
lib/Target/Mips/Mips64InstrInfo.td
lib/Target/Mips/MipsCondMov.td
lib/Target/Mips/MipsInstrInfo.td
lib/Target/Mips/MipsSchedule.td