Mercurial > repos > blastem
comparison cpu_dsl.py @ 1938:1dae90605199
Fix autogenerated temp variables in interrupt subroutine in CPU DSL
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 23 Apr 2020 20:57:14 -0700 |
parents | 9ab5184811ea |
children | 7d4df6b74263 |
comparison
equal
deleted
inserted
replaced
1935:f23e70fb6607 | 1938:1dae90605199 |
---|---|
1595 pieces.append('\n\t{') | 1595 pieces.append('\n\t{') |
1596 if self.interrupt in self.subroutines: | 1596 if self.interrupt in self.subroutines: |
1597 pieces.append('\n\t\tif (context->cycles >= context->sync_cycle) {') | 1597 pieces.append('\n\t\tif (context->cycles >= context->sync_cycle) {') |
1598 self.meta = {} | 1598 self.meta = {} |
1599 self.temp = {} | 1599 self.temp = {} |
1600 self.subroutines[self.interrupt].inline(self, [], pieces, otype, None) | 1600 intpieces = [] |
1601 self.subroutines[self.interrupt].inline(self, [], intpieces, otype, None) | |
1602 for size in self.temp: | |
1603 pieces.append('\n\tuint{sz}_t gen_tmp{sz}__;'.format(sz=size)) | |
1604 pieces += intpieces | |
1601 pieces.append('\n\t\t}') | 1605 pieces.append('\n\t\t}') |
1602 self.meta = {} | 1606 self.meta = {} |
1603 self.temp = {} | 1607 self.temp = {} |
1604 self.subroutines[self.body].inline(self, [], pieces, otype, None) | 1608 self.subroutines[self.body].inline(self, [], pieces, otype, None) |
1605 pieces.append('\n\t}') | 1609 pieces.append('\n\t}') |