summaryrefslogtreecommitdiff
path: root/sys/tools/makeobjops.awk
AgeCommit message (Collapse)Author
2025-09-08makeobjops.awk: Style nits in generated filesZhenlei Huang
MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D52407
2023-11-26sys: Remove ancient SCCS tags.Warner Losh
Remove ancient SCCS tags from the tree, automated scripting, with two minor fixup to keep things compiling. All the common forms in the tree were removed with a perl script. Sponsored by: Netflix
2023-08-16sys: Remove $FreeBSD$: one-line sh patternWarner Losh
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
2022-10-06Make #if and #endif do what people expect in *_if.mAndrew Turner
These are used in a few places. Pass them to the generated .c and .h files to allow us to build the parts of the interface the kernel config supports. Reviewed by: imp, jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D36882
2021-04-26newbus: remove support for SINGLETONWarner Losh
Revert rest of de8dd262c43b since it's now unused. jhibbits@ introduced this to give powerpc MMU functions IFUNC like performance while retaining the kobj interface, speeding up operations 10-20%. Since there was only ever one instance of the mmu interface active at any given time, we could cache the looked up results more agressively. powerpc migrated to using IFUNCs to get an even larger performance boost in 45b69dd63e, deleting the two files it was added to in de8dd262c43b. However, there's few, if any, other potential applications of this to the tree today. It's now unused and undocumented. Retire it to eliminate this wart and to preclude the need to document it. Should a simmilar case arise in the future, the code is in git... Discusssed with: jhibbits@ Reviewed by: jhb@ Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D29997
2020-01-18Add a 'SINGLETON' directive to kobj interface definitionJustin Hibbits
Summary: This makes the interface described in the definition file act like a pseudo-IFUNC service, by caching the found method locally. Applying this to the PowerPC MMU definitions, it yields a significant (15-20%) performance improvement, seen in both a 'make buildworld' and a parallel build of LLVM, on a POWER9 system. Reviewed By: imp Differential Revision: https://reviews.freebsd.org/D23245 Notes: svn path=/head/; revision=356860
2019-05-08Avoid literal @generated tag in file-generating scriptsEd Maste
We don't want the generator itself tagged as a generated file. Reviewed by: cem Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D20182 Notes: svn path=/head/; revision=347328
2019-05-07Use @generated tag in generated filesEd Maste
Multiple tools use @generated to identify generated files (for example, in a review Phabricator will by default hide diffs in generated files). Use the @generated tag in makeobjops.awk and vnode_if.awk as we've done for other generated files. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=347224
2017-12-31Teach makeobjops.awk to accept PROLOG and EPILOG blocks beforeColin Percival
METHOD and STATICMETHOD declarations; that code will be inserted into the dispatch function before and after the method call. Use this functionality and the TSLOG framework to record DEVICE_ATTACH and DEVICE_PROBE entry/exit timestamps. Notes: svn path=/head/; revision=327428
2017-11-20sys: further adoption of SPDX licensing ID tags.Pedro F. Giffuni
Mainly focus on files that use BSD 3-Clause license. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. Special thanks to Wind River for providing access to "The Duke of Highlander" tool: an older (2014) run over FreeBSD tree was useful as a starting point. Notes: svn path=/head/; revision=326023
2017-02-28Renumber copyright clause 4Warner Losh
Renumber cluase 4 to 3, per what everybody else did when BSD granted them permission to remove clause 3. My insistance on keeping the same numbering for legal reasons is too pedantic, so give up on that point. Submitted by: Jan Schaumann <jschauma@stevens.edu> Pull Request: https://github.com/freebsd/freebsd/pull/96 Notes: svn path=/head/; revision=314436
2011-11-09Restore the comment that I removed by accident.Ed Schouten
The comment still applies to this block of code. Notes: svn path=/head/; revision=227385
2011-11-09Simplify the code emitted by makeobjops.awk slightly.Ed Schouten
Just place the default kobj_method inside the kobjop_desc structure. There's no need to give these kobj_methods their own symbol. This shaves off 10 KB of a GENERIC kernel binary. Notes: svn path=/head/; revision=227384
2011-11-08Make kobj_methods constant.Ed Schouten
These structures hold no information that is modified during runtime. By marking this constant, we see approximately 600 symbols become read-only (amd64 GENERIC). While there, also mark the kobj_method structures generated by makeobjops.awk static. They are only referenced by the kobjop_desc structures within the same file. Before: $ ls -l kernel -rwxr-xr-x 1 ed wheel 15937309 Nov 8 16:29 kernel* $ size kernel text data bss dec hex filename 12260854 1358468 2848832 16468154 fb48ba kernel $ nm kernel | fgrep -c ' r ' 8240 After: $ ls -l kernel -rwxr-xr-x 1 ed wheel 15922469 Nov 8 16:25 kernel* $ size kernel text data bss dec hex filename 12302869 1302660 2848704 16454233 fb1259 kernel $ nm kernel | fgrep -c ' r ' 8838 Notes: svn path=/head/; revision=227343
2009-10-22Rename default to default_function, for compatibility with GNU awk.Ed Maste
(For cross-compiling out-of-tree kernel modules, for example.) Notes: svn path=/head/; revision=198374
2005-01-07/* -> /*- for license, minor formatting changesWarner Losh
Notes: svn path=/head/; revision=139825
2004-07-11Pass doxygen doc comments through to the output.Doug Rabson
Notes: svn path=/head/; revision=131987
2004-04-07Remove advertising clause from University of California Regent's license,Warner Losh
per letter dated July 22, 1999. Approved by: core Notes: svn path=/head/; revision=127976
2003-10-16Changes for new SMP-safe kobj method dispatch algorithm.Doug Rabson
Notes: svn path=/head/; revision=121134
2002-08-20Use mv -f. Otherwise if you accidently build as root, and then as a user,David E. O'Brien
it keeps asking you if you want to overwrite it or not. Submitted by: peter Notes: svn path=/head/; revision=102164
2002-05-01Awk version of makeobjops.PL.David E. O'Brien
Note the invocation ordering is slightly different: awk -f makeobjops.awk foo.m -ch Submitted by: Oliver Fromme <olli@fromme.com> Notes: svn path=/head/; revision=95841