Mercurial > hg > CbC > CbC_gcc
comparison gcc/config/i386/cygming.h @ 145:1830386684a0
gcc-9.2.0
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 11:34:05 +0900 |
parents | 84e7813d76e9 |
children |
comparison
equal
deleted
inserted
replaced
131:84e7813d76e9 | 145:1830386684a0 |
---|---|
1 /* Operating system specific defines to be used when targeting GCC for | 1 /* Operating system specific defines to be used when targeting GCC for |
2 hosting on Windows32, using a Unix style C library and tools. | 2 hosting on Windows32, using a Unix style C library and tools. |
3 Copyright (C) 1995-2018 Free Software Foundation, Inc. | 3 Copyright (C) 1995-2020 Free Software Foundation, Inc. |
4 | 4 |
5 This file is part of GCC. | 5 This file is part of GCC. |
6 | 6 |
7 GCC is free software; you can redistribute it and/or modify | 7 GCC is free software; you can redistribute it and/or modify |
8 it under the terms of the GNU General Public License as published by | 8 it under the terms of the GNU General Public License as published by |
266 | 266 |
267 /* Emit code to check the stack when allocating more than 4000 | 267 /* Emit code to check the stack when allocating more than 4000 |
268 bytes in one go. */ | 268 bytes in one go. */ |
269 #define CHECK_STACK_LIMIT 4000 | 269 #define CHECK_STACK_LIMIT 4000 |
270 | 270 |
271 #undef STACK_BOUNDARY | |
272 #define STACK_BOUNDARY (TARGET_64BIT && ix86_abi == MS_ABI ? 128 : BITS_PER_WORD) | |
273 | |
274 /* By default, target has a 80387, uses IEEE compatible arithmetic, | 271 /* By default, target has a 80387, uses IEEE compatible arithmetic, |
275 returns float values in the 387 and needs stack probes. | 272 returns float values in the 387 and needs stack probes. |
276 We also align doubles to 64-bits for MSVC default compatibility. */ | 273 We also align doubles to 64-bits for MSVC default compatibility. */ |
277 | 274 |
278 #undef TARGET_SUBTARGET_DEFAULT | 275 #undef TARGET_SUBTARGET_DEFAULT |
386 gen_rtx_MEM (FUNCTION_MODE, \ | 383 gen_rtx_MEM (FUNCTION_MODE, \ |
387 gen_rtx_SYMBOL_REF (Pmode, "_monstartup")), \ | 384 gen_rtx_SYMBOL_REF (Pmode, "_monstartup")), \ |
388 const0_rtx)); \ | 385 const0_rtx)); \ |
389 } | 386 } |
390 | 387 |
391 /* Java Native Interface (JNI) methods on Win32 are invoked using the | |
392 stdcall calling convention. */ | |
393 #undef MODIFY_JNI_METHOD_CALL | |
394 #define MODIFY_JNI_METHOD_CALL(MDECL) \ | |
395 build_type_attribute_variant ((MDECL), \ | |
396 build_tree_list (get_identifier ("stdcall"), \ | |
397 NULL)) | |
398 | |
399 /* For Win32 ABI compatibility */ | 388 /* For Win32 ABI compatibility */ |
400 #undef DEFAULT_PCC_STRUCT_RETURN | 389 #undef DEFAULT_PCC_STRUCT_RETURN |
401 #define DEFAULT_PCC_STRUCT_RETURN 0 | 390 #define DEFAULT_PCC_STRUCT_RETURN 0 |
402 | 391 |
403 /* MSVC returns aggregate types of up to 8 bytes via registers. | 392 /* MSVC returns aggregate types of up to 8 bytes via registers. |
420 support vector modes using ADJUST_FIELD_ALIGN, defined in i386.h. */ | 409 support vector modes using ADJUST_FIELD_ALIGN, defined in i386.h. */ |
421 #ifdef IN_TARGET_LIBS | 410 #ifdef IN_TARGET_LIBS |
422 #undef BIGGEST_FIELD_ALIGNMENT | 411 #undef BIGGEST_FIELD_ALIGNMENT |
423 #define BIGGEST_FIELD_ALIGNMENT 64 | 412 #define BIGGEST_FIELD_ALIGNMENT 64 |
424 #endif | 413 #endif |
425 | |
426 /* A bit-field declared as `int' forces `int' alignment for the struct. */ | |
427 #undef PCC_BITFIELD_TYPE_MATTERS | |
428 #define PCC_BITFIELD_TYPE_MATTERS 1 | |
429 #define GROUP_BITFIELDS_BY_ALIGN TYPE_NATIVE(rec) | |
430 | 414 |
431 /* Enable alias attribute support. */ | 415 /* Enable alias attribute support. */ |
432 #ifndef SET_ASM_OP | 416 #ifndef SET_ASM_OP |
433 #define SET_ASM_OP "\t.set\t" | 417 #define SET_ASM_OP "\t.set\t" |
434 #endif | 418 #endif |