OpenRadioss
2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
mumps_size.c
Go to the documentation of this file.
1
/*
2
*
3
* This file is part of MUMPS 5.5.1, released
4
* on Tue Jul 12 13:17:24 UTC 2022
5
*
6
*
7
* Copyright 1991-2022 CERFACS, CNRS, ENS Lyon, INP Toulouse, Inria,
8
* Mumps Technologies, University of Bordeaux.
9
*
10
* This version of MUMPS is provided to you free of charge. It is
11
* released under the CeCILL-C license
12
* (see doc/CeCILL-C_V1-en.txt, doc/CeCILL-C_V1-fr.txt, and
13
* https://cecill.info/licences/Licence_CeCILL-C_V1-en.html)
14
*
15
*/
16
/* Utility to automatically get the sizes of Fortran types */
17
#include "
mumps_size.h
"
18
void
MUMPS_CALL
MUMPS_SIZE_C
(
char
*a,
char
*b,
MUMPS_INT8
*diff)
19
{
20
*diff = (
MUMPS_INT8
) (b - a);
21
}
22
void
MUMPS_CALL
MUMPS_ADDR_C
(
char
*a,
MUMPS_INT8
*addr)
23
{
24
*addr=*(
MUMPS_INT8
*)&a;
25
/*
26
With the form "*addr=(MUMPS_INT8)a", "(MUMPS_INT8)a"
27
and "a" may have different binary representations
28
for large addresses. In the above code, "(MUMPS_INT8*)&a"
29
is a pointer to the address "a", considering that "a" is
30
a MUMPS_INT8 rather than an address. Then the content of
31
that pointer is the exact binary representation of the
32
address a, but stored in a MUMPS_INT8 (signed 64-bit
33
integer).
34
*/
35
}
MUMPS_INT8
#define MUMPS_INT8
Definition
mumps_c_types.h:35
MUMPS_CALL
#define MUMPS_CALL
Definition
mumps_compat.h:35
mumps_size.h
MUMPS_ADDR_C
#define MUMPS_ADDR_C
Definition
mumps_size.h:23
MUMPS_SIZE_C
#define MUMPS_SIZE_C
Definition
mumps_size.h:20
engine
extlib
MUMPS_5.5.1
src
mumps_size.c
Generated by
1.15.0