Correct, "is overlapping" check performs many times per second.
But I would suggest re-organizing your events like this:
This way you don't perform unnecessary checks on every tick, which means better performance. It also makes the code easier to understand when everything related to enemy damage is grouped in one event, rather that scattered across the event sheet.
Also, instead of updating the position of Slash sprite on every tick, you can pin it to the player, or attach with hierarchy (add as a child).