mirror of
https://gcc.gnu.org/git/gcc.git
synced 2024-11-23 19:03:59 +08:00
gcov: Remove TARGET_GCOV_TYPE_SIZE target hook
This reverts commit 8cdcea51c0
.
gcc/c-family/ChangeLog:
* c-cppbuiltin.cc (c_cpp_builtins): Do not define
__LIBGCC_GCOV_TYPE_SIZE.
gcc/ChangeLog:
* config/sparc/rtemself.h (SPARC_GCOV_TYPE_SIZE): Remove.
* config/sparc/sparc.cc (sparc_gcov_type_size): Likewise.
(TARGET_GCOV_TYPE_SIZE): Likewise.
* coverage.cc (get_gcov_type): Use LONG_LONG_TYPE_SIZE instead
of removed target hook.
* doc/tm.texi: Regenerate.
* doc/tm.texi.in (TARGET_GCOV_TYPE_SIZE): Remove.
* target.def: Likewise.
* targhooks.cc (default_gcov_type_size): Likewise.
* targhooks.h (default_gcov_type_size): Likewise.
libgcc/ChangeLog:
* libgcov.h (gcov_type): Use LONG_LONG_TYPE_SIZE.
(gcov_type_unsigned): Likewise.
This commit is contained in:
parent
5f4499606e
commit
23d33775f9
@ -1567,8 +1567,6 @@ c_cpp_builtins (cpp_reader *pfile)
|
||||
/* For libgcov. */
|
||||
builtin_define_with_int_value ("__LIBGCC_VTABLE_USES_DESCRIPTORS__",
|
||||
TARGET_VTABLE_USES_DESCRIPTORS);
|
||||
builtin_define_with_int_value ("__LIBGCC_GCOV_TYPE_SIZE",
|
||||
targetm.gcov_type_size());
|
||||
}
|
||||
|
||||
/* For use in assembly language. */
|
||||
|
@ -40,5 +40,3 @@
|
||||
|
||||
/* Use the default */
|
||||
#undef LINK_GCC_C_SEQUENCE_SPEC
|
||||
|
||||
#define SPARC_GCOV_TYPE_SIZE 32
|
||||
|
@ -972,17 +972,6 @@ char sparc_hard_reg_printed[8];
|
||||
#undef TARGET_ZERO_CALL_USED_REGS
|
||||
#define TARGET_ZERO_CALL_USED_REGS sparc_zero_call_used_regs
|
||||
|
||||
#ifdef SPARC_GCOV_TYPE_SIZE
|
||||
static HOST_WIDE_INT
|
||||
sparc_gcov_type_size (void)
|
||||
{
|
||||
return SPARC_GCOV_TYPE_SIZE;
|
||||
}
|
||||
|
||||
#undef TARGET_GCOV_TYPE_SIZE
|
||||
#define TARGET_GCOV_TYPE_SIZE sparc_gcov_type_size
|
||||
#endif
|
||||
|
||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||
|
||||
/* Return the memory reference contained in X if any, zero otherwise. */
|
||||
|
@ -138,7 +138,7 @@ tree
|
||||
get_gcov_type (void)
|
||||
{
|
||||
scalar_int_mode mode
|
||||
= smallest_int_mode_for_size (targetm.gcov_type_size ());
|
||||
= smallest_int_mode_for_size (LONG_LONG_TYPE_SIZE > 32 ? 64 : 32);
|
||||
return lang_hooks.types.type_for_mode (mode, false);
|
||||
}
|
||||
|
||||
|
@ -12601,17 +12601,6 @@ Store the result in @var{target} if convenient.
|
||||
The default clears the top byte of the original pointer.
|
||||
@end deftypefn
|
||||
|
||||
@deftypefn {Target Hook} HOST_WIDE_INT TARGET_GCOV_TYPE_SIZE (void)
|
||||
Returns the gcov type size in bits. This type is used for example for
|
||||
counters incremented by profiling and code-coverage events. The default
|
||||
value is 64, if the type size of long long is greater than 32, otherwise the
|
||||
default value is 32. A 64-bit type is recommended to avoid overflows of the
|
||||
counters. If the @option{-fprofile-update=atomic} is used, then the
|
||||
counters are incremented using atomic operations. Targets not supporting
|
||||
64-bit atomic operations may override the default value and request a 32-bit
|
||||
type.
|
||||
@end deftypefn
|
||||
|
||||
@deftypevr {Target Hook} bool TARGET_HAVE_SHADOW_CALL_STACK
|
||||
This value is true if the target platform supports
|
||||
@option{-fsanitize=shadow-call-stack}. The default value is false.
|
||||
|
@ -8040,6 +8040,4 @@ maintainer is familiar with.
|
||||
|
||||
@hook TARGET_MEMTAG_UNTAGGED_POINTER
|
||||
|
||||
@hook TARGET_GCOV_TYPE_SIZE
|
||||
|
||||
@hook TARGET_HAVE_SHADOW_CALL_STACK
|
||||
|
@ -7243,18 +7243,6 @@ DEFHOOK
|
||||
void, (void),
|
||||
NULL)
|
||||
|
||||
DEFHOOK
|
||||
(gcov_type_size,
|
||||
"Returns the gcov type size in bits. This type is used for example for\n\
|
||||
counters incremented by profiling and code-coverage events. The default\n\
|
||||
value is 64, if the type size of long long is greater than 32, otherwise the\n\
|
||||
default value is 32. A 64-bit type is recommended to avoid overflows of the\n\
|
||||
counters. If the @option{-fprofile-update=atomic} is used, then the\n\
|
||||
counters are incremented using atomic operations. Targets not supporting\n\
|
||||
64-bit atomic operations may override the default value and request a 32-bit\n\
|
||||
type.",
|
||||
HOST_WIDE_INT, (void), default_gcov_type_size)
|
||||
|
||||
/* This value represents whether the shadow call stack is implemented on
|
||||
the target platform. */
|
||||
DEFHOOKPOD
|
||||
|
@ -2778,11 +2778,4 @@ default_memtag_untagged_pointer (rtx tagged_pointer, rtx target)
|
||||
return untagged_base;
|
||||
}
|
||||
|
||||
/* The default implementation of TARGET_GCOV_TYPE_SIZE. */
|
||||
HOST_WIDE_INT
|
||||
default_gcov_type_size (void)
|
||||
{
|
||||
return TYPE_PRECISION (long_long_integer_type_node) > 32 ? 64 : 32;
|
||||
}
|
||||
|
||||
#include "gt-targhooks.h"
|
||||
|
@ -302,6 +302,4 @@ extern rtx default_memtag_set_tag (rtx, rtx, rtx);
|
||||
extern rtx default_memtag_extract_tag (rtx, rtx);
|
||||
extern rtx default_memtag_untagged_pointer (rtx, rtx);
|
||||
|
||||
extern HOST_WIDE_INT default_gcov_type_size (void);
|
||||
|
||||
#endif /* GCC_TARGHOOKS_H */
|
||||
|
@ -52,7 +52,7 @@
|
||||
#if __CHAR_BIT__ == 8
|
||||
typedef unsigned gcov_unsigned_t __attribute__ ((mode (SI)));
|
||||
typedef unsigned gcov_position_t __attribute__ ((mode (SI)));
|
||||
#if __LIBGCC_GCOV_TYPE_SIZE > 32
|
||||
#if LONG_LONG_TYPE_SIZE > 32
|
||||
typedef signed gcov_type __attribute__ ((mode (DI)));
|
||||
typedef unsigned gcov_type_unsigned __attribute__ ((mode (DI)));
|
||||
#else
|
||||
@ -63,7 +63,7 @@ typedef unsigned gcov_type_unsigned __attribute__ ((mode (SI)));
|
||||
#if __CHAR_BIT__ == 16
|
||||
typedef unsigned gcov_unsigned_t __attribute__ ((mode (HI)));
|
||||
typedef unsigned gcov_position_t __attribute__ ((mode (HI)));
|
||||
#if __LIBGCC_GCOV_TYPE_SIZE > 32
|
||||
#if LONG_LONG_TYPE_SIZE > 32
|
||||
typedef signed gcov_type __attribute__ ((mode (SI)));
|
||||
typedef unsigned gcov_type_unsigned __attribute__ ((mode (SI)));
|
||||
#else
|
||||
@ -73,7 +73,7 @@ typedef unsigned gcov_type_unsigned __attribute__ ((mode (HI)));
|
||||
#else
|
||||
typedef unsigned gcov_unsigned_t __attribute__ ((mode (QI)));
|
||||
typedef unsigned gcov_position_t __attribute__ ((mode (QI)));
|
||||
#if __LIBGCC_GCOV_TYPE_SIZE > 32
|
||||
#if LONG_LONG_TYPE_SIZE > 32
|
||||
typedef signed gcov_type __attribute__ ((mode (HI)));
|
||||
typedef unsigned gcov_type_unsigned __attribute__ ((mode (HI)));
|
||||
#else
|
||||
|
Loading…
Reference in New Issue
Block a user