Shrinkify Thumb2 r = add sp, imm.
[llvm/avr.git] / docs / HistoricalNotes / 2001-07-08-InstructionSelection2.txt
blob1ae006d508615fe7a5b9d7a6bc9fae94e5122616
1 Date: Sun, 8 Jul 2001 10:02:20 -0500
2 From: Vikram S. Adve <vadve@cs.uiuc.edu>
3 To: vadve@cs.uiuc.edu, Ruchira Sasanka <sasanka@students.uiuc.edu>
4 Cc: Chris Lattner <lattner@cs.uiuc.edu>
5 Subject: RE: machine instruction operands
7 I got interrupted and forgot to explain the example.  In that case:
9         reg will be the 3rd operand of MUL and it will be of type
10 MO_MInstrVirtualReg.  The field MachineInstr* minstr will point to the
11 instruction that computes reg.
13         numElements will be an immediate constant, not a register.
15         %sp will be operand 1 of ADD and it will be of type MO_MachineReg.  The
16 field regNum identifies the register.
18         numElements will be operand 2 of ADD and it will be of type
19 MO_VMVirtualReg.  The field Value* value identifies the value.
21         ptr will be operand 3 of ADD will also be %sp, i.e., of
22         type MO_MachineReg. regNum identifies the register.
24 --Vikram