Commit Graph

306366 Commits

Author SHA1 Message Date
riastradh c37983148b t_hypot: Use an ld80 test case that actually fits in ld80.
Also add comments explaining how I generated these test cases.

(No autoconf back doors hidden in these magic numbers, I promise!  No
pythagoreans were harmed in the production of these tests either.)
2024-05-12 20:58:44 +00:00
riastradh fbb3f7e8bd tests/lib/libm/t_next: Disable a test if long double is double.
This test, to verify nexttoward(x, x*(1 - LDBL_EPSILON/2)) moves in
the direction of x*(1 - LDBL_EPSILON/2), only makes sense if long
double has more precision than double -- the point of the exercise is
to verify that nexttoward moves even if the direction parameter can't
be rounded to double.  But if long double is just double, this test
makes no sense.
2024-05-12 20:17:57 +00:00
riastradh 118100d9c7 riscv fenv.h: Make sure FE_* exception constants have type int.
This may not be formally required by the standard, but the values
must be representable by int since that's the type that functions
like fetestexcept and feclearexcept traffic in.  And this is less
work than changing all the printf %d users in tree.
2024-05-12 20:04:12 +00:00
christos 73bcbcbc77 Add forward decl for procfs include. 2024-05-12 19:54:48 +00:00
christos 85070b5732 fix whitespace 2024-05-12 19:50:42 +00:00
rillig fe00c2837e flashctl: fix lint's strict bool mode with Clang preprocessor
Treating the return value from the <ctype.h> character classification
functions as an 'int' is neither elegant nor idiomatic, but it works for
now.
2024-05-12 19:03:55 +00:00
rillig 403b9b79e2 lint: remove redundant LINTFLAGS for lint2
The -T flag is already provided by ../Makefile.inc, along with several
other flags.
2024-05-12 19:00:10 +00:00
rillig 0671c09e39 lint: add wrapper for <ctype.h> functions, for strict bool mode
When using the Clang preprocessor (with MKLLVM=yes), the preprocessor
output does not indicate which tokens come from a system header and
which tokens come from the user code.  Lint's strict bool mode relies on
this information to treat the character classification functions from
<ctype.h> as if their return type were bool instead of int.

These wrapper functions are only used when their argument is indeed a
'char', but not when the argument might be 'EOF or representable as an
unsigned char', such as when reading a byte from the input.
2024-05-12 18:49:35 +00:00
christos c162bcc0ed PR/58212: Malte Dehling: Add zfs verification method 2024-05-12 18:02:16 +00:00
rillig 91e71a2ef4 lint: remove unused flag '-u' from lint1
This flag is completely handled by lint2.
2024-05-12 18:00:58 +00:00
rillig 0866d10930 lint: suppress "used but not defined" for bin, sbin, usr.bin, usr.sbin
These diagnostics are emitted by lint2, and like all diagnostics from
lint2, they don't affect the exit status.

In libc, lint cannot handle the renamings from namespace.h, generating
many false positive diagnostics since 'libc_function' is used but
'_libc_function' is defined. Until this situation is handled properly,
suppress this diagnostic.
2024-05-12 17:55:36 +00:00
christos 87f98fe280 PR/58227: Ricardo Branco: Add support for proc/sysvipc in Linux emulator 2024-05-12 17:26:50 +00:00
christos 25cb9c57ac PR/58240: Ricardo Branco: Add missing limits 2024-05-12 17:23:10 +00:00
christos 995cf49196 PR/58240: Ricardo Branco: Add support for proc/self/limits as used by Linux 2024-05-12 17:22:29 +00:00
christos f353b0cf1b Regen 2024-05-12 17:18:34 +00:00
christos 770fbbf7f7 PR/58250: RVP: Add TP-Link UE300 USB LAN adapter 2024-05-12 17:17:56 +00:00
macallan bc92ec78d9 add simple 16bit load and store ops 2024-05-12 13:43:27 +00:00
rillig 0ec48ab17e lint: condense code for strict bool mode 2024-05-12 12:32:39 +00:00
rillig 681c37d9da lint: in strict bool mode, allow do-while-0
Even though 0 is not a boolean constant, allow this common idiom, to
help in those cases where the C preprocessor used by lint does not mark
tokens as coming from system headers (Clang).
2024-05-12 12:28:34 +00:00
macallan 805a7e0567 support 16bit / RGB565 colour 2024-05-12 11:48:05 +00:00
rillig 37d5546d18 tests/lint: clean up tests for strict bool mode 2024-05-12 11:46:14 +00:00
rillig 7370a14da5 libc/pwcache.c: remove stray semicolon from do-while-0 macro 2024-05-12 10:58:58 +00:00
rillig 7d42dd44cb sys/lock.h: remove stray semicolon from SPINLOCK_BACKOFF macro 2024-05-12 10:45:13 +00:00
rillig e886a84233 include/bitstring.h: remove CONSTCOND comment from do-while-0 loop
Lint doesn't need this comment anymore, as there is nothing surprising
or unusual about this idiom.

sed -Ei 's,} *while *\(/\* *CONSTCOND *\*/ *0\),} while (0),' *.h
2024-05-12 10:41:23 +00:00
rillig 586ac460ac sys/module_hook.h: remove CONSTCOND comment from do-while-0 loop
Lint doesn't need this comment anymore, as there is nothing surprising
or unusual about this idiom.
2024-05-12 10:38:03 +00:00
rillig c795e5449d sys/sys: remove CONSTCOND comment from do-while-0 loop
Lint doesn't need this comment anymore, as there is nothing surprising
or unusual about this idiom.
2024-05-12 10:34:56 +00:00
rillig cfc26a5399 sys/ktrace.h: fix off-by-one in snprintb for ktrace flags
There's a one-bit gap between TRC_EMUL and INHERIT.

Noticed by RVP.
2024-05-12 09:34:25 +00:00
rillig 88d3a49009 lint: don't call memcpy with null pointer
Even copying 0 bytes from a null pointer invokes undefined behavior.
2024-05-12 09:07:41 +00:00
rillig 922b235ff9 lint: move code for parsing balanced token sequences to lex.c
To access yytext from lex.c, the lexer needs to be in %pointer mode,
which was specified in IEEE Std 1003.1, 2004 Edition and thus should be
old enough to be available on platforms other than NetBSD, for use in
tools/lint1 where lint1 is built before yacc and lex.
2024-05-12 08:48:36 +00:00
macallan abfde61b92 moar registers
in particular, document XLUT bits
2024-05-12 07:22:13 +00:00
tsutsui d8c6ab68a2 Use MI <sys/bootblock.h> to refer LIF filesystem structures.
This should have been done when LIF definitions were initially added
to <sys/bootblock.h> for MI installboot(8).
2024-05-11 22:29:36 +00:00
tsutsui 7f4c51639c Sync with src/sys/arch/hp300/stand/mkboot/volhdr.h rev 1.6.
https://mail-index.netbsd.org/source-changes/2024/05/07/msg151195.html
> Use proper signedness for the LIF file system data structures.

mkboot should use this MI <sys/bootblock.h> and volhdr.h should
be removed soon.
2024-05-11 22:10:27 +00:00
christos a3cbce7519 Only mark the terminfo entry promoted if actually was. 2024-05-11 22:06:57 +00:00
riastradh 9fd6dfe53c tests/lib/libm/t_asin: Cite PR lib/58246. 2024-05-11 21:27:53 +00:00
riastradh d2baffa504 tests/lib/libm/t_hypot: Check inf/nan cases too. 2024-05-11 20:51:41 +00:00
riastradh 806be69ba7 hypotl(3): Fix includes and macros.
1. Need <math.h> for __HAVE_LONG_DOUBLE.
2. Need <machine/ieee.h> for struct ieee_ext_u &c.
3. EXT_FRACLBITS, not LDBL_MANL_SIZE.

PR lib/58245: hypotl is broken on ld128 ports
2024-05-11 20:09:47 +00:00
riastradh 0ca3b42cb3 tests/lib/libm/t_hypot: More trivial tests.
Check both signs of zero.
2024-05-11 20:09:13 +00:00
tsutsui 0fa07d309d Recognize SCSI CD-ROM devices as a booted device properly.
Necessary for PR port-hp300/54455, to boot an md root root RAMDISK
kernel from CD-ROM without "WARNING: can't find match for bootdev:"
prompt.
2024-05-11 19:16:19 +00:00
riastradh 3331daffc1 tests/lib/libm/t_hypot: Expand substantially.
PR lib/58245: hypotl is broken on ld128 ports
2024-05-11 19:08:29 +00:00
rillig 7eb83dabf6 lint: clean up grammar rule name for 'type_specifier' 2024-05-11 16:58:59 +00:00
rillig 4bd7e6e13f lint: parse but otherwise ignore C23 attributes
The C23 attributes are only parsed before an expression in an expression
statement, as a proof of concept.  Other places will follow later.
2024-05-11 16:12:28 +00:00
rillig 9cfc443f88 lint: warn when comparing an integer to a floating point constant 2024-05-11 15:53:38 +00:00
riastradh c5c7b2d6d4 tests/lib/libc/stdio/t_printf: Fix sign error in ld128 case.
Also link back to where the test case came from.
2024-05-11 14:39:53 +00:00
riastradh da294ec0fb tests/lib/libc/stdio/t_printf: Fix typo in ld128 case.
printf %La does not write the `L' suffix.
2024-05-11 14:33:23 +00:00
riastradh dd77bd8d99 sys/cdefs.h: Make various macros work more robustly.
Use predefined __-namespace macros inside __BIT, __type_min,
__type_max, and __type_fit:

- Use __CHAR_BIT__ instead of NBBY so this works without sys/types.h
  and without _NETBSD_SOURCE.

- Use __INTMAX_TYPE__, __UINTMAX_TYPE__ instead of intmax_t, uintmax_t
  so this works without stdint.h.

No functional change intended.
2024-05-11 13:26:54 +00:00
martin ed4d3e7508 PR 58235: add support for SIOCGIFDATA and SIOCZIFDATA ioctls. 2024-05-11 10:22:17 +00:00
tsutsui 615d944ef6 Fix a 20 years old botch by me in setbootdev() on switching to MI SCSI.
setbootdev() updates bootdev data shared between BOOTROM and
it notifies BOOTROM to choose a current root device as a boot device
on the next boot, but I didn't understand the intention and then
it has been broken on SCSI disks. Sigh.
(I wonder if no one has noticed this old feature for 20 years..)

Should be pulled up to netbsd-10 and netbsd-9.
2024-05-11 09:55:11 +00:00
skrll 9f63894909 Do the '#if FCSR_FMASK == 0' thing that fpgetmask.c does for consistency. 2024-05-11 07:40:18 +00:00
mlelstv d965a38342 Fix aarch64 build 2024-05-11 07:34:33 +00:00
andvar ebf071fa68 s/embbeded/embedded/. 2024-05-11 06:54:17 +00:00