diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/config.gcc | 1 | ||||
-rw-r--r-- | gcc/config/gcn/gcn.c | 12 |
3 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fee1f55..94b5c49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2019-06-25 Kwok Cheung Yeung <kcy@codesourcery.com> + Andrew Stubbs <ams@codesourcery.com> + + * config.gcc (thread_file): Set to gcn for AMD GCN. + * config/gcn/gcn.c (gcn_emutls_var_init): New function. + (TARGET_EMUTLS_VAR_INIT): New hook. + 2019-06-25 Martin Jambor <mjambor@suse.cz> PR ipa/90939 diff --git a/gcc/config.gcc b/gcc/config.gcc index 8488ab6..bfe27ad 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -1462,6 +1462,7 @@ amdgcn-*-amdhsa) fi # Force .init_array support. gcc_cv_initfini_array=yes + thread_file=gcn ;; moxie-*-elf) gas=yes diff --git a/gcc/config/gcn/gcn.c b/gcc/config/gcn/gcn.c index 71f4b4c..e528b64 100644 --- a/gcc/config/gcn/gcn.c +++ b/gcc/config/gcn/gcn.c @@ -3163,6 +3163,16 @@ gcn_valid_cvt_p (machine_mode from, machine_mode to, enum gcn_cvt_t op) || (to == DFmode && (from == SImode || from == SFmode))); } +/* Implement TARGET_EMUTLS_VAR_INIT. + + Disable emutls (gthr-gcn.h does not support it, yet). */ + +tree +gcn_emutls_var_init (tree, tree decl, tree) +{ + sorry_at (DECL_SOURCE_LOCATION (decl), "TLS is not implemented for GCN."); +} + /* }}} */ /* {{{ Costs. */ @@ -6007,6 +6017,8 @@ print_operand (FILE *file, rtx x, int code) #define TARGET_CONSTANT_ALIGNMENT gcn_constant_alignment #undef TARGET_DEBUG_UNWIND_INFO #define TARGET_DEBUG_UNWIND_INFO gcn_debug_unwind_info +#undef TARGET_EMUTLS_VAR_INIT +#define TARGET_EMUTLS_VAR_INIT gcn_emutls_var_init #undef TARGET_EXPAND_BUILTIN #define TARGET_EXPAND_BUILTIN gcn_expand_builtin #undef TARGET_FUNCTION_ARG |