From 0d14fc8cd5cee0b8527192c6820452e96d329e05 Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Mon, 1 Sep 2008 01:51:14 +0000 Subject: [PATCH] Reorganize some instruction format definitions. No functionality change. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@55594 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/ARMInstrFormats.td | 47 +++++++++++++++++++------------ 1 file changed, 29 insertions(+), 18 deletions(-) diff --git a/lib/Target/ARM/ARMInstrFormats.td b/lib/Target/ARM/ARMInstrFormats.td index 798f8c36fc7..d3b97239fe4 100644 --- a/lib/Target/ARM/ARMInstrFormats.td +++ b/lib/Target/ARM/ARMInstrFormats.td @@ -120,6 +120,8 @@ class AsI opcod, dag oops, dag iops, Format f, string opc, string asm, list pattern> : sI; + +// addrmode1 instructions class AI1 opcod, dag oops, dag iops, Format f, string opc, string asm, list pattern> : I opcod, dag oops, dag iops, Format f, string opc, let Inst{21-24} = opcod; let Inst{26-27} = 0; } +class AI1x2 opcod, dag oops, dag iops, Format f, string opc, + string asm, list pattern> + : I; + +// addrmode2 loads and stores class AI2 opcod, dag oops, dag iops, Format f, string opc, string asm, list pattern> : I opcod, dag oops, dag iops, Format f, string opc, let Inst{24} = 1; // P bit } -class AI3 opcod, dag oops, dag iops, Format f, string opc, - string asm, list pattern> - : I; -class AI4 opcod, dag oops, dag iops, Format f, string opc, - string asm, list pattern> - : I; -class AI1x2 opcod, dag oops, dag iops, Format f, string opc, - string asm, list pattern> - : I; - // Pre-indexed ops // loads class AI2ldwpr opcod, dag oops, dag iops, Format f, string opc, @@ -233,11 +228,6 @@ class AI2stbpr opcod, dag oops, dag iops, Format f, string opc, let Inst{24} = 1; // P bit } -class AI3pr opcod, dag oops, dag iops, Format f, string opc, - string asm, string cstr, list pattern> - : I; - // Post-indexed ops // loads class AI2ldwpo opcod, dag oops, dag iops, Format f, string opc, @@ -279,6 +269,27 @@ class AI2stbpo opcod, dag oops, dag iops, Format f, string opc, let Inst{24} = 0; // P bit } +// addrmode3 instructions +class AI3 opcod, dag oops, dag iops, Format f, string opc, + string asm, list pattern> + : I; + +// addrmode4 instructions +class AI4 opcod, dag oops, dag iops, Format f, string opc, + string asm, list pattern> + : I; + + +// Pre-indexed ops +class AI3pr opcod, dag oops, dag iops, Format f, string opc, + string asm, string cstr, list pattern> + : I; + + +// Post-indexed ops class AI3po opcod, dag oops, dag iops, Format f, string opc, string asm, string cstr, list pattern> : I