I noticed that there was some lacking test coverage for checking when the .cfi_sections .debug_frame intrinsic is emitted. I added this test to address this.
On x86_64 we can see that even with -fno-exceptions there is no .cfi_sections .debug_frame intrinsic emitted because there is an unwind table attribute.
On Arm64 we can see that with -fno-exceptions, there is no unwind table attribute, so the .cfi_sections .debug_frame intrinsic is emitted correctly.
Alternatively, with -fexceptions, both Arm64 and x86_64 emit an unwind table and therefore do not emit a .cfi_sections .debug_frame intrinsic
All this work was done in addition to https://reviews.llvm.org/D139663 patch.