Kingcom / armips

An assembler for various ARM and MIPS platforms. Builds available at http://buildbot.orphis.net/armips/
MIT License
363 stars 77 forks source link

Avoid shifting allocations that previously worked #205

Closed unknownbrackets closed 3 years ago

unknownbrackets commented 3 years ago

This attempts to solve the macro area size infinite loop problem in a simple way: resuse the last positions that worked unless there's a reason not to.

This means each suballocation moves forward until they each settle. If there's an allocation failure, it'll try to redistribute - this could still lead to an infinite loop, but better to give a chance of allocation than give up.

-[Unknown]