HSA: support alignment for hsa_symbols (PR hsa/70391)
authorMartin Liska <mliska@suse.cz>
Thu, 31 Mar 2016 17:10:15 +0000 (19:10 +0200)
committerMartin Liska <marxin@gcc.gnu.org>
Thu, 31 Mar 2016 17:10:15 +0000 (17:10 +0000)
commit320c1a36793e0f408924b38bc006e6b791dceff7
tree5ed5ca7dff70ab72534570302bae6e0c19e1b345
parent8f80cbdb26ca754ff3b6fe6c735eca6dd01401fa
HSA: support alignment for hsa_symbols (PR hsa/70391)

PR hsa/70391
* hsa-brig.c (emit_directive_variable): Emit alignment
according to hsa_symbol::m_align.
* hsa-dump.c (hsa_byte_alignment): Move the function to
another file.
(dump_hsa_symbol): Dump alignment of HSA symbols.
* hsa-gen.c (get_symbol_for_decl): Set-up alignment
of a symbol.
(gen_hsa_addr_with_align): New function.
(hsa_bitmemref_alignment): Use newly added function.
(gen_hsa_insns_for_load): Likewise.
(gen_hsa_insns_for_store): Likewise.
(gen_hsa_memory_copy): New argument added.
(gen_hsa_insns_for_single_assignment): Respect
alignment for assignments processed via
gen_hsa_memory_copy.
(gen_hsa_insns_for_direct_call): Likewise.
(gen_hsa_insns_for_return): Likewise.
(gen_function_def_parameters): Set default
alignment.
* hsa.c (hsa_object_alignment): New function.
(hsa_byte_alignment): Pasted function.
* hsa.h (hsa_symbol::m_align): New field.

From-SVN: r234643
gcc/ChangeLog
gcc/hsa-brig.c
gcc/hsa-dump.c
gcc/hsa-gen.c
gcc/hsa.c
gcc/hsa.h