mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-12-15 22:00:47 +08:00
Synchronize GCC compile plugin headers
This patch copies some changes to the compile headers from GCC's include/ directory. It is the gdb equivalent of the GCC commit bc0e18a9 -- however, while that commit also necessarily touched libcc1, this one of course does not. Tested by rebuilding and also running the gdb.compile tests. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31397
This commit is contained in:
@@ -89,7 +89,10 @@ GCC_METHOD5 (int /* bool */, build_add_field,
|
||||
|
||||
/* After all the fields have been added to a struct or union, the
|
||||
struct or union type must be "finished". This does some final
|
||||
cleanups in GCC. */
|
||||
cleanups in GCC.
|
||||
|
||||
Note that when using GCC_C_FE_VERSION_2, it is preferable to call
|
||||
finish_record_with_alignment instead. */
|
||||
|
||||
GCC_METHOD2 (int /* bool */, finish_record_or_union,
|
||||
gcc_type, /* Argument RECORD_OR_UNION_TYPE. */
|
||||
@@ -220,3 +223,11 @@ GCC_METHOD2 (gcc_type, float_type,
|
||||
unsigned long, /* Argument SIZE_IN_BYTES. */
|
||||
const char *) /* Argument BUILTIN_NAME. */
|
||||
|
||||
/* New in GCC_FE_VERSION_2. Like finish_record_or_union but the caller also
|
||||
supplies the alignment. If the alignment is 0, this acts identically to
|
||||
finish_record_or_union. */
|
||||
|
||||
GCC_METHOD3 (int /* bool */, finish_record_with_alignment,
|
||||
gcc_type, /* Argument RECORD_OR_UNION_TYPE. */
|
||||
unsigned long, /* Argument SIZE_IN_BYTES. */
|
||||
unsigned long) /* Argument ALIGNMENT. */
|
||||
|
||||
@@ -45,7 +45,10 @@ enum gcc_c_api_version
|
||||
|
||||
/* Added char_type. Added new version of int_type and float_type,
|
||||
deprecated int_type_v0 and float_type_v0. */
|
||||
GCC_C_FE_VERSION_1 = 1
|
||||
GCC_C_FE_VERSION_1 = 1,
|
||||
|
||||
/* Added finish_record_with_alignment method. */
|
||||
GCC_C_FE_VERSION_2 = 2,
|
||||
};
|
||||
|
||||
/* Qualifiers. */
|
||||
@@ -198,7 +201,11 @@ struct gcc_c_context
|
||||
/* The type of the initialization function. The caller passes in the
|
||||
desired base version and desired C-specific version. If the
|
||||
request can be satisfied, a compatible gcc_context object will be
|
||||
returned. Otherwise, the function returns NULL. */
|
||||
returned. In particular, this may return a context object with a higher
|
||||
actual version number than was requested, provided the higher version is
|
||||
fully compatible. (As of GCC_C_FE_VERSION_2, this is always true.)
|
||||
|
||||
Otherwise, the function returns NULL. */
|
||||
|
||||
typedef struct gcc_c_context *gcc_c_fe_context_function
|
||||
(enum gcc_base_api_version,
|
||||
|
||||
@@ -483,7 +483,11 @@ struct gcc_cp_context
|
||||
/* The type of the initialization function. The caller passes in the
|
||||
desired base version and desired C-specific version. If the
|
||||
request can be satisfied, a compatible gcc_context object will be
|
||||
returned. Otherwise, the function returns NULL. */
|
||||
returned. In particular, this may return a context object with a higher
|
||||
actual version number than was requested, provided the higher version is
|
||||
fully compatible.
|
||||
|
||||
Otherwise, the function returns NULL. */
|
||||
|
||||
typedef struct gcc_cp_context *gcc_cp_fe_context_function
|
||||
(enum gcc_base_api_version,
|
||||
|
||||
Reference in New Issue
Block a user