[PATCH] Fix omp declare simd cloning (PR tree-optimization/60823)

Rainer Orth ro@CeBiTec.Uni-Bielefeld.DE
Tue May 13 17:39:00 GMT 2014


Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> writes:

> Jakub Jelinek <jakub@redhat.com> writes:
>
>> 2014-04-18  Jakub Jelinek  <jakub@redhat.com>
>>
>> 	PR tree-optimization/60823
>> 	* omp-low.c (ipa_simd_modify_function_body): Go through
>> 	all SSA_NAMEs and for those refering to vector arguments
>> 	which are going to be replaced adjust SSA_NAME_VAR and,
>> 	if it is a default definition, change it into a non-default
>> 	definition assigned at the beginning of function from new_decl.
>> 	(ipa_simd_modify_stmt_ops): Rewritten.
>> 	* tree-dfa.c (set_ssa_default_def): When removing default def,
>> 	check for NULL loc instead of NULL *loc.
>>
>> 	* c-c++-common/gomp/pr60823-1.c: New test.
>> 	* c-c++-common/gomp/pr60823-2.c: New test.
>> 	* c-c++-common/gomp/pr60823-3.c: New test.
>
> The second test FAILs on Solaris/x86 with Sun as:
>
> ld.so.1: pr60823-2.exe: fatal: pr60823-2.exe: hardware capability (CA_SUNW_HW_1) unsupported: 0x20000000  [ AVX ]
> FAIL: c-c++-common/gomp/pr60823-2.c execution test
>
> If this is expected, I can extend the code in gcc.target/i386/i386.exp
> (or rather move it to a new lib/clearcap.exp) to handle that via linker
> maps.

Something else seems to be amiss here: the new
libgomp.fortran/declare-simd-[12].f90 tests fail in just the same way,
although avx_runtime is false and they are only compiled with -msse2.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University



More information about the Gcc-patches mailing list