https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70391
--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> --- Author: marxin Date: Thu Mar 31 17:10:48 2016 New Revision: 234644 URL: https://gcc.gnu.org/viewcvs?rev=234644&root=gcc&view=rev Log: HSA: handle alignment of string builtins (PR hsa/70391) PR hsa/70391 * hsa-gen.c (hsa_function_representation::update_dominance): New function. (convert_addr_to_flat_segment): Likewise. (gen_hsa_memory_set): New alignment argument. (gen_hsa_ctor_assignment): Likewise. (gen_hsa_insns_for_single_assignment): Provide alignment to gen_hsa_ctor_assignment. (gen_hsa_insns_for_direct_call): Add new argument. (expand_lhs_of_string_op): New function. (expand_string_operation_builtin): Likewise. (expand_memory_copy): New function. (expand_memory_set): New function. (gen_hsa_insns_for_call): Use HOST_WIDE_INT. (convert_switch_statements): Change signature. (generate_hsa): Use a return value of the function. (pass_gen_hsail::execute): Do not call convert_switch_statements here. * hsa-regalloc.c (hsa_regalloc): Call update_dominance. * hsa.h (hsa_function_representation::m_modified_cfg): New flag. (hsa_function_representation::update_dominance): New function. Modified: trunk/gcc/ChangeLog trunk/gcc/hsa-gen.c trunk/gcc/hsa-regalloc.c trunk/gcc/hsa.h