Use correct fp_env definition for OpenBSD by ron-at-swgy · Pull Request #4259 · google/or-tools

@ron-at-swgy

This commit includes OpenBSD in the list of definitions checked when
adding exceptions to the control flags of the floating point environment
on OpenBSD. Similar to FreeBSD, the flags are contained in an x87 struct
within the fp_env structure.

For reference, the [official CVSWeb repository](https://cvsweb.openbsd.org/src/sys/arch/amd64/include/fenv.h?rev=1.4&content-type=text/x-cvsweb-markup) shows a definition of:

```c
/*
 * fenv_t represents the entire floating-point environment.
 */
typedef struct {
        struct {
                unsigned int __control;         /* Control word register */
                unsigned int __status;          /* Status word register */
                unsigned int __tag;             /* Tag word register */
                unsigned int __others[4];       /* EIP, Pointer Selector, etc */
        } __x87;
        unsigned int __mxcsr;                   /* Control, status register */
} fenv_t;
```

Mizux pushed a commit that referenced this pull request

Jun 5, 2024
This commit includes OpenBSD in the list of definitions checked when
adding exceptions to the control flags of the floating point environment
on OpenBSD. Similar to FreeBSD, the flags are contained in an x87 struct
within the fp_env structure.

For reference, the [official CVSWeb repository](https://cvsweb.openbsd.org/src/sys/arch/amd64/include/fenv.h?rev=1.4&content-type=text/x-cvsweb-markup) shows a definition of:

```c
/*
 * fenv_t represents the entire floating-point environment.
 */
typedef struct {
        struct {
                unsigned int __control;         /* Control word register */
                unsigned int __status;          /* Status word register */
                unsigned int __tag;             /* Tag word register */
                unsigned int __others[4];       /* EIP, Pointer Selector, etc */
        } __x87;
        unsigned int __mxcsr;                   /* Control, status register */
} fenv_t;
```