Page MenuHomeFreeBSD

machine/floatingpoing.h: harmonize all arches
Needs ReviewPublic

Authored by kib on Fri, Oct 2, 7:47 PM.
Tags
None
Referenced Files
F175442189: D60255.diff
Sat, Oct 10, 9:46 PM
Unknown Object (File)
Fri, Oct 9, 5:29 AM
Unknown Object (File)
Fri, Oct 9, 3:51 AM
Unknown Object (File)
Fri, Oct 9, 3:01 AM
Unknown Object (File)
Thu, Oct 8, 11:54 PM
Unknown Object (File)
Thu, Oct 8, 6:05 AM
Unknown Object (File)
Thu, Oct 8, 5:41 AM
Unknown Object (File)
Thu, Oct 8, 5:36 AM

Details

Summary
Reported by:    fluffy

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

kib requested review of this revision.Fri, Oct 2, 7:47 PM
This revision is now accepted and ready to land.Fri, Oct 2, 8:12 PM

So is there some reason this can't be just

/* This file is in the public domain */
#pragma once
#include <sys/_floatingpoint.h>

where sys/_floatingpoint.h is

/* This file is in the public domain */
#pragma once
#include <sys/cdefs.h>
#include <machine/ieeefp.h>
sys/arm/include/floatingpoint.h
1–2

same comment as the arm64 fp.

sys/arm64/include/floatingpoint.h
20

So this advertising clause suggests that we can just dump this entire license.

This file is now 2 lines of includes that are dictated by externalities. This means we can either just do what I did for a bunch of files and say it's public domain, or just put our own license on this file.

In D60255#1382883, @imp wrote:

So is there some reason this can't be just

/* This file is in the public domain */
#pragma once
#include <sys/_floatingpoint.h>

where sys/_floatingpoint.h is

/* This file is in the public domain */
#pragma once
#include <sys/cdefs.h>
#include <machine/ieeefp.h>

pragma once is not the standard C. Besides my high dislike of avoidable non-standard features, note that the header is public and absolutely must work with non-gcc-like compilers.

Having header file including sys/_floatingpoint.h IMO does not buy us anything. I would understand the argument of moving inclusion of sys/cdefs.h into ieeefp.h but we still need the machine/floatingpoint.h

WRT license, it is strange to have two otherwise identical files under different licenses, but I will get any advise there.

In D60255#1382889, @kib wrote:
In D60255#1382883, @imp wrote:

So is there some reason this can't be just

/* This file is in the public domain */
#pragma once
#include <sys/_floatingpoint.h>

where sys/_floatingpoint.h is

/* This file is in the public domain */
#pragma once
#include <sys/cdefs.h>
#include <machine/ieeefp.h>

pragma once is not the standard C. Besides my high dislike of avoidable non-standard features, note that the header is public and absolutely must work with non-gcc-like compilers.

I'll concede the point.

Having header file including sys/_floatingpoint.h IMO does not buy us anything. I would understand the argument of moving inclusion of sys/cdefs.h into ieeefp.h but we still need the machine/floatingpoint.h

WRT license, it is strange to have two otherwise identical files under different licenses, but I will get any advise there.

You have identical files because there's no material that merits copyright protection. There's only one way to spell it, hence my advice you just declare these public domain like we've done with all the i386/amd64 headers that just redirect to the x86. I see this as no different. That's my advice as the project's license hat, or as close to one that we have.

kib marked 2 inline comments as done.

Put everything in the public domain.

This revision now requires review to proceed.Thu, Oct 8, 9:23 AM