May I first ask whether you are absolutely sure that your synthesis tool chain guarantees that all state holding elements are zero initialised? In particular, I have seen cases where "bigger" (meaning exceeding some configurable threshold) pieces of state got mapped onto target-specific SRAM, and those weren't initialised.
Assuming this is actually guaranteed, then my key concern is that this is obviously specific to a particular synthesis flow, and hence can't be a default.
Would you feel comfortable to tell EBMC about this in some programmatic way, e.g., using a Python API? How are you dealing with this when doing simulation?
With best regards,
Daniel