}
virtual void getTargetDefines(const LangOptions &Opts,
MacroBuilder &Builder) const {
+ DefineStd(Builder, "unix", Opts);
+ Builder.defineMacro("__ELF__");
+ if (Opts.POSIXThreads)
+ Builder.defineMacro("_REENTRANT");
+ if (Opts.CPlusPlus)
+ Builder.defineMacro("_GNU_SOURCE");
+
Builder.defineMacro("__native_client__");
getArchDefines(Opts, Builder);
}
}
#endif
+#ifdef unix
+void unixdefined() {
+ // CHECK: unixdefined
+}
+#endif
+
+#ifdef __ELF__
+void __ELF__defined() {
+ // CHECK: __ELF__defined
+}
+#endif
+
+#ifdef _GNU_SOURCE
+void _GNU_SOURCEdefined() {
+ // CHECK: _GNU_SOURCEdefined
+}
+#endif
+
+
// Check types
// CHECK: signext i8 @check_char()