Module Name:    src
Committed By:   rillig
Date:           Sat Aug 28 16:21:25 UTC 2021

Modified Files:
        src/tests/usr.bin/xlint/lint1: emit.c emit.exp-ln

Log Message:
tests/lint: demonstrate that GCC builtins are emitted by default

They will be skipped in a follow-up commit, but to see the effects of
that, they first need to be emitted.


To generate a diff of this commit:
cvs rdiff -u -r1.2 -r1.3 src/tests/usr.bin/xlint/lint1/emit.c \
    src/tests/usr.bin/xlint/lint1/emit.exp-ln

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/usr.bin/xlint/lint1/emit.c
diff -u src/tests/usr.bin/xlint/lint1/emit.c:1.2 src/tests/usr.bin/xlint/lint1/emit.c:1.3
--- src/tests/usr.bin/xlint/lint1/emit.c:1.2	Sun Aug  8 11:07:19 2021
+++ src/tests/usr.bin/xlint/lint1/emit.c	Sat Aug 28 16:21:24 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: emit.c,v 1.2 2021/08/08 11:07:19 rillig Exp $	*/
+/*	$NetBSD: emit.c,v 1.3 2021/08/28 16:21:24 rillig Exp $	*/
 # 3 "emit.c"
 
 /*
@@ -7,8 +7,8 @@
  * consistently across different translation units.
  */
 
-// omit the option '-g' to avoid having the GCC builtins in the .ln file.
-/* lint1-flags: -Sw */
+
+
 
 /*
  * Define some derived types.
@@ -163,3 +163,19 @@ cover_outqchar(void)
 	my_printf("%s", "%%");
 	my_printf("%s", "%\a %\b %\f %\n %\r %\t %\v %\177");
 }
+
+/*
+ * Calls to GCC builtin functions should not be emitted since GCC already
+ * guarantees a consistent definition of these function and checks the
+ * arguments, so there is nothing left to do for lint.
+ */
+void
+call_gcc_builtins(int x, long *ptr)
+{
+	long value;
+
+	__builtin_expect(x > 0, 1);
+	__builtin_bswap32(0x12345678);
+
+	__atomic_load(ptr, &value, 0);
+}
Index: src/tests/usr.bin/xlint/lint1/emit.exp-ln
diff -u src/tests/usr.bin/xlint/lint1/emit.exp-ln:1.2 src/tests/usr.bin/xlint/lint1/emit.exp-ln:1.3
--- src/tests/usr.bin/xlint/lint1/emit.exp-ln:1.2	Sun Aug  8 11:07:19 2021
+++ src/tests/usr.bin/xlint/lint1/emit.exp-ln	Sat Aug 28 16:21:24 2021
@@ -1,3 +1,6 @@
+1d-1.1e15__builtin_isinfF1lDI
+2d-1.2e15__builtin_isnanF1lDI
+3d-1.3e18__builtin_copysignF2lDlDI
 0semit.c
 Semit.c
 47d0.47e12extern__BoolB
@@ -56,3 +59,7 @@ Semit.c
 163c0.163s2"%%"i9my_printff2PcCPCV
 164c0.164s2"%\a%\b%\f%\n%\r%\t%\v%\177"i9my_printff2PcCPCV
 159d0.159d14cover_outqcharF0V
+177c0.177p2i16__builtin_expectf2III
+178c0.178p1i17__builtin_bswap32f1II
+180c0.180z3i13__atomic_loadf3PLPLII
+173d0.173d17call_gcc_builtinsF2IPLV

Reply via email to