================
@@ -564,4 +585,19 @@ void AVRTargetInfo::getTargetDefines(const LangOptions 
&Opts,
     Builder.defineMacro("__flash4", "__attribute__((__address_space__(5)))");
   if (NumFlashBanks >= 6)
     Builder.defineMacro("__flash5", "__attribute__((__address_space__(6)))");
+
+  // Define macros for builtins
+  Builder.defineMacro("__BUILTIN_AVR_NOP", "1");
+  Builder.defineMacro("__BUILTIN_AVR_SEI", "1");
+  Builder.defineMacro("__BUILTIN_AVR_CLI", "1");
+  Builder.defineMacro("__BUILTIN_AVR_WDR", "1");
+  Builder.defineMacro("__BUILTIN_AVR_SLEEP", "1");
+  Builder.defineMacro("__BUILTIN_AVR_SWAP", "1");
+  Builder.defineMacro("__BUILTIN_AVR_FMUL", "1");
+  Builder.defineMacro("__BUILTIN_AVR_FMULS", "1");
+  Builder.defineMacro("__BUILTIN_AVR_FMULSU", "1");
+  Builder.defineMacro("__BUILTIN_AVR_DELAY_CYCLES", "1");
----------------
benshi001 wrote:

Are thse marcos all defined to `1` on avr-gcc for all devices ? Even AVR tiny 
devices?

https://github.com/llvm/llvm-project/pull/203214
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to