Just incase you play with the ESP8266 devices.
I edited some files and created some extra options for how the Flash is split.
This allows for modules fitted with 4,8,16,32MB memory to use larger sketch's while still being able to update via HTTP.
Hopefully someone will pull it into an update.
The Topic was here ESP8266 Arduino Github
But if you want to split the flash to say 1M+1M+2M then I can confirm it works fine.