On 29.07.22 10:03, Jakub Jelinek wrote: > There were 2 issues visible on this new testcase, one that we didn't have > special POINTER_TYPE_P handling in a few spots of expand_omp_simd ... > The other issue was that we put n2 expression directly into a > comparison in a condition and regimplified that, for the &a[512] case that > and with gimplification being destructed that unfortunately meant modification > of original fd->loops[?].n2. Fixed by unsharing the expression. I created a testcase for the non-simd case – and due to messing up, it failed; hence, I filled PR middle-end/106467. After fixing the testcase, it passes. (→ closed PR as invalid). However, given that the testcase now exists, I think it makes sense to add it :-) Changes compared to the simd testcase: replaced '(parallel for) simd' by 'for', removed 'linear', used now 'b' and 'c' instead of storing both ptrs in 'b'. Side remark: Before GCC 12, GCC complained about "q = p + n" with "error: initializer expression refers to iteration variable ‘p’". OK for mainline? Tobias ----------------- Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955