diff options
author | Vikram S. Adve <vadve@cs.uiuc.edu> | 2001-07-31 21:49:28 +0000 |
---|---|---|
committer | Vikram S. Adve <vadve@cs.uiuc.edu> | 2001-07-31 21:49:28 +0000 |
commit | ff7070bbb94af5009f3aa82e4ab65b7671a2dc73 (patch) | |
tree | 7884cd33967a9a4aba5a7abcae73f31718726bb0 /llvm/lib/CodeGen/MachineInstr.cpp | |
parent | 5af40763804c2280577cb4364942f370fc09b413 (diff) | |
download | bcm5719-llvm-ff7070bbb94af5009f3aa82e4ab65b7671a2dc73.tar.gz bcm5719-llvm-ff7070bbb94af5009f3aa82e4ab65b7671a2dc73.zip |
Allow machine instructions with variable numbers of arguments.
This is used only by Phi for now.
llvm-svn: 336
Diffstat (limited to 'llvm/lib/CodeGen/MachineInstr.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineInstr.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/llvm/lib/CodeGen/MachineInstr.cpp b/llvm/lib/CodeGen/MachineInstr.cpp index 64fcaa05771..d3e468cc2eb 100644 --- a/llvm/lib/CodeGen/MachineInstr.cpp +++ b/llvm/lib/CodeGen/MachineInstr.cpp @@ -19,13 +19,24 @@ //************************ Class Implementations **************************/ - +// Constructor for instructions with fixed #operands (nearly all) MachineInstr::MachineInstr(MachineOpCode _opCode, OpCodeMask _opCodeMask) : opCode(_opCode), opCodeMask(_opCodeMask), operands(TargetInstrDescriptors[_opCode].numOperands) { + assert(TargetInstrDescriptors[_opCode].numOperands >= 0); +} + +// Constructor for instructions with variable #operands +MachineInstr::MachineInstr(MachineOpCode _opCode, + unsigned numOperands, + OpCodeMask _opCodeMask) + : opCode(_opCode), + opCodeMask(_opCodeMask), + operands(numOperands) +{ } void |