Derive specific architectural definitions from configuration parameters set up in config.h and present them for normative use by the compiler. Also global constant strings for several purposes.
Define critical symbols as tested below. This is done by the config.sh script.
DO NOT FORGET to use the GCC options found in ../config/confopts.gcc on the GCC command line! This can be done as,
$ gcc `cat ../config/config_opts_always.gcc` \ `cat ../config/config_opts_usually.gcc` \ -otheropts -c filename.c ... $ gcc `cat ../config/config_opts_always.gccld` \ ... *.o -o targetbinary
Copyright 2005 The Apache Software Foundation or its licensors, as applicable.
Licensed under the Apache License, Version 2.0 ("the License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and limitations under the License.
Definition in file arch.h.
#include "config.h"
Go to the source code of this file.
Defines | |
#define | _ARCH_DEFINED_ |
#define | _ARCH_DEFINED_ |
#define | _VALID_ARCH_DEFINED_ |
#define | ARCH_BIG_ENDIAN |
Defined only for big endian architectures, in opposition to ARCH_LITTLE_ENDIAN. | |
#define | ARCH_COPYRIGHT_APACHE(filetoken, exttoken, svnidstring) |
Copyright declaration macro for the Apache Software Foundation for all files in program. | |
#define | ARCH_COPYRIGHT_TEXT_APACHE "Copyright 2005 The Apache Software Foundation or its licensors, as applicable." |
Copyright declaration string for the Apache Software Foundation for all files in program. | |
#define | ARCH_LICENSE_TEXT_APACHE "Licensed under the Apache License, Version 2.0 (\"the License\");\n\you may not use this file except in compliance with the License.\n\You may obtain a copy of the License at\n\\n\ http://www.apache.org/licenses/LICENSE-2.0\n\\n\Unless required by applicable law or agreed to in writing,\n\software distributed under the License is distributed on an\n\\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\n\either express or implied.\n\\n\See the License for the specific language governing permissions\n\and limitations under the License." |
License declaration string for the Apache Software Foundation for all files in program. | |
#define | ARCH_ODD4_ADDRESS_SIGSEGV |
Check architectural hardware error oddities related to even/odd byte addressing. | |
#define | ARCH_ODD_ADDRESS_SIGSEGV |
Define more general case of odd-address SIGSEGV. | |
Functions | |
static void | arch_h_dummy (void) |
Variables | |
static char * | arch_h_copyright = "\0" "$URL: https://svn.apache.org/harmony/project/arch.h $ $Id: arch.h 0 09/28/2005 dlydick $" " " "Copyright 2005 The Apache Software Foundation or its licensors, as applicable." |
Static copyright string for this source file. |
|
Copyright declaration string for the Apache Software Foundation for all files in program.
|
|
License declaration string for the Apache Software Foundation for all files in program.
|
|
Value: static char *filetoken##_##exttoken##_copyright = "\0" svnidstring \ " " ARCH_COPYRIGHT_TEXT_APACHE; \ \ static void filetoken##_##exttoken##_dummy(void) { \ char *p = filetoken##_##exttoken##_copyright; \ filetoken##_##exttoken##_copyright = p; \ filetoken##_##exttoken##_dummy(); } This macro declares the copyright by the Apache Software Foundation for all source files. Declare a static string containing SVN info plus copyright and declare a static function that references the string, plus a local that recursively calls the function. This function is used to satisfy the compiler that the static string is being referenced without also generating a similar message about the static function not being referenced.
For internal use only.
The The initial ASCII \0 (NUL) character is inserted to guarantee that the string itself will never be appended to some previous text-type data, thus not being the beginning of a string for search purposes in the output (binary) form of the file invoking the macro. Refer to getsvndata.sh for more information. |
|
For internal use only. Demand that EXACTLY ONE hardware architecture be defined |
|
For internal use only. Demand that EXACTLY ONE hardware architecture be defined |
|
For internal use only. Make available, especially to jvmcfg.h |
|
Check architectural hardware error oddities related to even/odd byte addressing. The behavioral oddities to be flagged for a specific architecture include:
|
|
Defined only for big endian architectures, in opposition to ARCH_LITTLE_ENDIAN. Used by swapping functions in bytegames.c and derived macros in cfmacros.h. |
|
Define more general case of odd-address SIGSEGV. If either ARCH_ODD4_ADDRESS_SIGSEGV or ARCH_ODD2_ADDRESS_SIGSEGV are defined, then this symbol is also defined as a union of the definitions. |
|
|
|
Static copyright string for this source file.
|