@@ -1716,40 +1716,14 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
1716
1716
setMaxAtomicSizeInBitsSupported(128);
1717
1717
1718
1718
if (Subtarget->isWindowsArm64EC()) {
1719
- // FIXME: are there other intrinsics we need to add here?
1720
- setLibcallName(RTLIB::MEMCPY, "#memcpy");
1721
- setLibcallName(RTLIB::MEMSET, "#memset");
1722
- setLibcallName(RTLIB::MEMMOVE, "#memmove");
1723
- setLibcallName(RTLIB::REM_F32, "#fmodf");
1724
- setLibcallName(RTLIB::REM_F64, "#fmod");
1725
- setLibcallName(RTLIB::FMA_F32, "#fmaf");
1726
- setLibcallName(RTLIB::FMA_F64, "#fma");
1727
- setLibcallName(RTLIB::SQRT_F32, "#sqrtf");
1728
- setLibcallName(RTLIB::SQRT_F64, "#sqrt");
1729
- setLibcallName(RTLIB::CBRT_F32, "#cbrtf");
1730
- setLibcallName(RTLIB::CBRT_F64, "#cbrt");
1731
- setLibcallName(RTLIB::LOG_F32, "#logf");
1732
- setLibcallName(RTLIB::LOG_F64, "#log");
1733
- setLibcallName(RTLIB::LOG2_F32, "#log2f");
1734
- setLibcallName(RTLIB::LOG2_F64, "#log2");
1735
- setLibcallName(RTLIB::LOG10_F32, "#log10f");
1736
- setLibcallName(RTLIB::LOG10_F64, "#log10");
1737
- setLibcallName(RTLIB::EXP_F32, "#expf");
1738
- setLibcallName(RTLIB::EXP_F64, "#exp");
1739
- setLibcallName(RTLIB::EXP2_F32, "#exp2f");
1740
- setLibcallName(RTLIB::EXP2_F64, "#exp2");
1741
- setLibcallName(RTLIB::EXP10_F32, "#exp10f");
1742
- setLibcallName(RTLIB::EXP10_F64, "#exp10");
1743
- setLibcallName(RTLIB::SIN_F32, "#sinf");
1744
- setLibcallName(RTLIB::SIN_F64, "#sin");
1745
- setLibcallName(RTLIB::COS_F32, "#cosf");
1746
- setLibcallName(RTLIB::COS_F64, "#cos");
1747
- setLibcallName(RTLIB::POW_F32, "#powf");
1748
- setLibcallName(RTLIB::POW_F64, "#pow");
1749
- setLibcallName(RTLIB::LDEXP_F32, "#ldexpf");
1750
- setLibcallName(RTLIB::LDEXP_F64, "#ldexp");
1751
- setLibcallName(RTLIB::FREXP_F32, "#frexpf");
1752
- setLibcallName(RTLIB::FREXP_F64, "#frexp");
1719
+ // FIXME: are there intrinsics we need to exclude from this?
1720
+ for (int i = 0; i < RTLIB::UNKNOWN_LIBCALL; ++i) {
1721
+ auto code = static_cast<RTLIB::Libcall>(i);
1722
+ auto libcallName = getLibcallName(code);
1723
+ if ((libcallName != nullptr) && (libcallName[0] != '#')) {
1724
+ setLibcallName(code, saver.save(Twine("#") + libcallName).data());
1725
+ }
1726
+ }
1753
1727
}
1754
1728
}
1755
1729
0 commit comments