diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-22 01:11:29 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-22 01:11:29 +0000 |
commit | 2a6f0f815222f423a4fa14e19e16deccdd9b5cbd (patch) | |
tree | 1d3e8e4b6c824cf31a86c19bd79a5a7767a5a468 /gcc/fixinc/fixincl.x | |
parent | 84ac08a426b4bd07738e8f7235c7cc5deceee1b5 (diff) | |
download | gcc-2a6f0f815222f423a4fa14e19e16deccdd9b5cbd.tar.gz |
* c-common.h (enum rid): Add RID_THREAD.
* c-decl.c (start_decl): Do not set DECL_COMMON for tls variables.
(grokdeclarator): Grok __thread.
* c-parse.in (reswords): Add __thread.
(rid_to_yy): Add RID_THREAD.
* cp/lex.c (rid_to_yy): Add RID_THREAD.
* tree.h (DECL_THREAD_LOCAL): New.
(struct tree_decl): Add thread_local_flag.
* print-tree.c (print_node): Dump DECL_THREAD_LOCAL.
* tree.c (staticp): TLS variables are not static.
* target-def.h (TARGET_HAVE_TLS): New.
* target.h (have_tls): New.
* output.h (SECTION_TLS): New.
* varasm.c (assemble_variable): TLS variables can't be common for now.
(default_section_type_flags): Handle .tdata and .tbss.
(default_elf_asm_named_section): Handle SECTION_TLS.
(categorize_decl_for_section): Handle DECL_THREAD_LOCAL.
* flags.h (flag_tls_default): Declare.
* toplev.c (flag_tls_default): Define.
(display_help): Display help for it.
(decode_f_option): Set it.
* doc/extend.texi (Thread-Local): New node describing language-level
thread-local storage.
* doc/invoke.texi (-ftls-model): Document.
* fixinc/inclhack.def (thread_keyword): New.
* fixinc/fixincl.x: Rebuild.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53715 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/fixinc/fixincl.x')
-rw-r--r-- | gcc/fixinc/fixincl.x | 46 |
1 files changed, 43 insertions, 3 deletions
diff --git a/gcc/fixinc/fixincl.x b/gcc/fixinc/fixincl.x index 589687f3860..b9271465698 100644 --- a/gcc/fixinc/fixincl.x +++ b/gcc/fixinc/fixincl.x @@ -5,7 +5,7 @@ * files which are fixed to work correctly with ANSI C and placed in a * directory that GNU C will search. * - * This file contains 145 fixup descriptions. + * This file contains 146 fixup descriptions. * * See README for more information. * @@ -4568,6 +4568,40 @@ static const char* apzSysz_Stdlib_For_SunPatch[] = { /* * * * * * * * * * * * * * * * * * * * * * * * * * * + * Description of Thread_Keyword fix + */ +tSCC zThread_KeywordName[] = + "thread_keyword"; + +/* + * File name selection pattern + */ +tSCC zThread_KeywordList[] = + "|bits/sigthread.h|pthread.h|"; +/* + * Machine/OS name selection pattern + */ +#define apzThread_KeywordMachs (const char**)NULL + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zThread_KeywordSelect0[] = + "__thread"; + +#define THREAD_KEYWORD_TEST_CT 1 +static tTestDesc aThread_KeywordTests[] = { + { TT_EGREP, zThread_KeywordSelect0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Thread_Keyword + */ +static const char* apzThread_KeywordPatch[] = { "sed", + "-e", "s/\\([^a-z0-9_]\\)__thread\\([^a-z0-9_]\\)/\\1__thr\\2/g", + (char*)NULL }; + +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * * Description of Tinfo_Cplusplus fix */ tSCC zTinfo_CplusplusName[] = @@ -5672,9 +5706,9 @@ static const char* apzX11_SprintfPatch[] = { * * List of all fixes */ -#define REGEX_COUNT 152 +#define REGEX_COUNT 153 #define MACH_LIST_SIZE_LIMIT 279 -#define FIX_COUNT 145 +#define FIX_COUNT 146 /* * Enumerate the fixes @@ -5796,6 +5830,7 @@ typedef enum { SVR4_PROFIL_FIXIDX, SYSV68_STRING_FIXIDX, SYSZ_STDLIB_FOR_SUN_FIXIDX, + THREAD_KEYWORD_FIXIDX, TINFO_CPLUSPLUS_FIXIDX, ULTRIX_ATEXIT_PARAM_FIXIDX, ULTRIX_ATOF_PARAM_FIXIDX, @@ -6408,6 +6443,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = { SYSZ_STDLIB_FOR_SUN_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aSysz_Stdlib_For_SunTests, apzSysz_Stdlib_For_SunPatch, 0 }, + { zThread_KeywordName, zThread_KeywordList, + apzThread_KeywordMachs, + THREAD_KEYWORD_TEST_CT, FD_MACH_ONLY, + aThread_KeywordTests, apzThread_KeywordPatch, 0 }, + { zTinfo_CplusplusName, zTinfo_CplusplusList, apzTinfo_CplusplusMachs, TINFO_CPLUSPLUS_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, |