Mercurial > repos > blastem
comparison 68kinst.c @ 2346:0111c8344477
Fix some issues identified by asan/ubsan
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 07 Oct 2023 18:04:35 -0700 |
parents | d8b0244101c4 |
children |
comparison
equal
deleted
inserted
replaced
2345:c76c81c21ae5 | 2346:0111c8344477 |
---|---|
148 break; | 148 break; |
149 case 1: | 149 case 1: |
150 dst->addr_mode = MODE_ABSOLUTE; | 150 dst->addr_mode = MODE_ABSOLUTE; |
151 ext = fetch(address, data); | 151 ext = fetch(address, data); |
152 address += 2; | 152 address += 2; |
153 dst->params.immed = ext << 16 | fetch(address, data); | 153 dst->params.immed = ((uint32_t)ext) << 16 | fetch(address, data); |
154 address += 2; | 154 address += 2; |
155 break; | 155 break; |
156 case 3: | 156 case 3: |
157 ext = fetch(address, data); | 157 ext = fetch(address, data); |
158 address += 2; | 158 address += 2; |
266 break; | 266 break; |
267 case OPSIZE_WORD: | 267 case OPSIZE_WORD: |
268 dst->params.immed = ext; | 268 dst->params.immed = ext; |
269 break; | 269 break; |
270 case OPSIZE_LONG: | 270 case OPSIZE_LONG: |
271 dst->params.immed = ext << 16 | fetch(address, data); | 271 dst->params.immed = ((uint32_t)ext) << 16 | fetch(address, data); |
272 address += 2; | 272 address += 2; |
273 break; | 273 break; |
274 } | 274 } |
275 break; | 275 break; |
276 default: | 276 default: |