comparison python/ppci/target/msp430/msp430.py @ 381:6df89163e114

Fix section and ldr pseudo instruction
author Windel Bouwman
date Sat, 26 Apr 2014 17:41:56 +0200
parents 3bb7dcfe5529
children c0d9837acde8
comparison
equal deleted inserted replaced
380:67a584582aee 381:6df89163e114
2 import types 2 import types
3 from ..basetarget import Register, Instruction, Target 3 from ..basetarget import Register, Instruction, Target
4 from ppci import CompilerError 4 from ppci import CompilerError
5 from .registers import r10, r11, r12, r13, r14, r15 5 from .registers import r10, r11, r12, r13, r14, r15
6 from .instructions import Reti, Mov, Add 6 from .instructions import Reti, Mov, Add
7 from ...assembler import BaseAssembler
8
7 9
8 # Create the target class (singleton): 10 # Create the target class (singleton):
11
12 class Msp430Assembler(BaseAssembler):
13 def __init__(self, target):
14 super().__init__(target)
15 self.make_parser()
16
9 17
10 class Msp430Target(Target): 18 class Msp430Target(Target):
11 def __init__(self): 19 def __init__(self):
12 super().__init__('msp430') 20 super().__init__('msp430')
13 21
37 lambda rhs: Add(rhs[1], rhs[3])) 45 lambda rhs: Add(rhs[1], rhs[3]))
38 46
39 self.add_keyword('reti') 47 self.add_keyword('reti')
40 self.add_instruction(['reti'], lambda rhs: Reti()) 48 self.add_instruction(['reti'], lambda rhs: Reti())
41 49
50 self.assembler = Msp430Assembler(self)
42 51
43 52
44 msp430target = Msp430Target() 53 msp430target = Msp430Target()
45 54
46 55