E-Stop should not rely on software to stop axes/spindle etc. It often is set up that way however, especially on home builds and cheap machines but it should be considered dangerous relying solely on software for such E-Stop situations.
Having said that Mach should stop everything that it has control over when E-Stop is pressed, if the spindle is not stopping then either Mach does not control it or there is a config issue.
Attach your xml and also if possible some documentation to the machines setup (components) and maybe the issue can be found.
Hood