I agree, I was just failing to grasp how the execution path of exception handling code is not "unwinding the stack". The compiler will have to prepare each stack frame and mark what needs to be deallocated and the exception handling code won't just jump straight to the nearest handler, but will visit each stack frame and undo the allocations, calling destructors and such.
On the other hand unwinding the stack is not complex and won't add much to program size.
On the other hand unwinding the stack is not complex and won't add much to program size.