Mercurial > repos > blastem
comparison x86_backend.c @ 282:7b8a49220e3b
Remove deferred address entries from abandoned translations inside z80_retrans_inst
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 04 May 2013 14:36:50 -0700 |
parents | d9bf8e61c33c |
children | 140af5509ce7 |
comparison
equal
deleted
inserted
replaced
281:44f0bbf57b4f | 282:7b8a49220e3b |
---|---|
6 deferred_addr * new_head = malloc(sizeof(deferred_addr)); | 6 deferred_addr * new_head = malloc(sizeof(deferred_addr)); |
7 new_head->next = old_head; | 7 new_head->next = old_head; |
8 new_head->address = address & 0xFFFFFF; | 8 new_head->address = address & 0xFFFFFF; |
9 new_head->dest = dest; | 9 new_head->dest = dest; |
10 return new_head; | 10 return new_head; |
11 } | |
12 | |
13 void remove_deferred_until(deferred_addr **head_ptr, deferred_addr * remove_to) | |
14 { | |
15 for(deferred_addr *cur = *head_ptr; cur && cur != remove_to; cur = *head_ptr) | |
16 { | |
17 *head_ptr = cur->next; | |
18 free(cur); | |
19 } | |
11 } | 20 } |
12 | 21 |
13 void process_deferred(deferred_addr ** head_ptr, void * context, native_addr_func get_native) | 22 void process_deferred(deferred_addr ** head_ptr, void * context, native_addr_func get_native) |
14 { | 23 { |
15 deferred_addr * cur = *head_ptr; | 24 deferred_addr * cur = *head_ptr; |