Commit 1e0890ae by Jan Hubicka Committed by Jan Hubicka

vect-reduc-dot-s16b.c: Mark functions noinline.


	* gcc.dg/vect/vect-reduc-dot-s16b.c: Mark functions noinline.
	* gcc.dg/vect/vect-105.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-6.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-53.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-2short.c: Mark functions noinline.
	* gcc.dg/vect/fast-math-vect-pr29925.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u8a.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-7.c: Mark functions noinline.
	* gcc.dg/vect/vect-50.c: Mark functions noinline.
	* gcc.dg/vect/vect-33.c: Mark functions noinline.
	* gcc.dg/vect/vect-16.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-sum.c: Mark functions noinline.
	* gcc.dg/vect/vect-float-extend-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-92.c: Mark functions noinline.
	* gcc.dg/vect/vect-75.c: Mark functions noinline.
	* gcc.dg/vect/vect-58.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2b.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-7.c: Mark functions noinline.
	* gcc.dg/vect/no-section-anchors-vect-69.c: Mark functions noinline.
	* gcc.dg/vect/vect-114.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4g.c: Mark functions noinline.
	* gcc.dg/vect/vect-8.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-1.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-45.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10a.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-5.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-18.c: Mark functions noinline.
	* gcc.dg/vect/vect-42.c: Mark functions noinline.
	* gcc.dg/vect/vect-25.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-01.c: Mark functions noinline.
	* gcc.dg/vect/vect-67.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-106.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-37.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2short.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u8b.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-8.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-79.c: Mark functions noinline.
	* gcc.dg/vect/vect-34.c: Mark functions noinline.
	* gcc.dg/vect/vect-17.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-102a.c: Mark functions noinline.
	* gcc.dg/vect/vect-align-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-93.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-s16.c: Mark functions noinline.
	* gcc.dg/vect/vect-76.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-8.c: Mark functions noinline.
	* gcc.dg/vect/vect-115.c: Mark functions noinline.
	* gcc.dg/vect/vect-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1a.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-11.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-10b.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-u8.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-6.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-19.c: Mark functions noinline.
	* gcc.dg/vect/vect-60.c: Mark functions noinline.
	* gcc.dg/vect/vect-26.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-02.c: Mark functions noinline.
	* gcc.dg/vect/vect-85.c: Mark functions noinline.
	* gcc.dg/vect/vect-68.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3b.c: Mark functions noinline.
	* gcc.dg/vect/vect-floatint-conversion-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-8.c: Mark functions noinline.
	* gcc.dg/vect/vect-107.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-1.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-20.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-9.c: Mark functions noinline.
	* gcc.dg/vect/vect-52.c: Mark functions noinline.
	* gcc.dg/vect/vect-35.c: Mark functions noinline.
	* gcc.dg/vect/vect-18.c: Mark functions noinline.
	* gcc.dg/vect/vect-align-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-77.c: Mark functions noinline.
	* gcc.dg/vect/vect-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2d.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-82_64.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i2-gap.c: Mark functions noinline.
	* gcc.dg/vect/vect-116.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-vect-iv-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1b.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-12.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-101.c: Mark functions noinline.
	* gcc.dg/vect/vect-44.c: Mark functions noinline.
	* gcc.dg/vect/vect-27.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-03.c: Mark functions noinline.
	* gcc.dg/vect/vect-86.c: Mark functions noinline.
	* gcc.dg/vect/vect-100.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3c.c: Mark functions noinline.
	* gcc.dg/vect/vect-floatint-conversion-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u32-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-fir-lb.c: Mark functions noinline.
	* gcc.dg/vect/vect-108.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-21.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2a.c: Mark functions noinline.
	* gcc.dg/vect/vect-11.c: Mark functions noinline.
	* gcc.dg/vect/vect-70.c: Mark functions noinline.
	* gcc.dg/vect/vect-36.c: Mark functions noinline.
	* gcc.dg/vect/vect-19.c: Mark functions noinline.
	* gcc.dg/vect/vect-95.c: Mark functions noinline.
	* gcc.dg/vect/vect-78.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-all.c: Mark functions noinline.
	* gcc.dg/vect/vect-117.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-13.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-1c.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u16-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Mark functions noinline.
	* gcc.dg/vect/vect-20.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-8.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-1.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-102.c: Mark functions noinline.
	* gcc.dg/vect/vect-62.c: Mark functions noinline.
	* gcc.dg/vect/vect-28.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-10.c: Mark functions noinline.
	* gcc.dg/vect/vect-vfa-04.c: Mark functions noinline.
	* gcc.dg/vect/vect-87.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u16a.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-4a.c: Mark functions noinline.
	* gcc.dg/vect/vect-109.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-22.c: Mark functions noinline.
	* gcc.dg/vect/no-section-anchors-vect-outer-4h.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2b.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8a.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-57.c: Mark functions noinline.
	* gcc.dg/vect/vect-12.c: Mark functions noinline.
	* gcc.dg/vect/vect-71.c: Mark functions noinline.
	* gcc.dg/vect/vect-54.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-mult.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-96.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1char.c: Mark functions noinline.
	* gcc.dg/vect/vect-110.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-u32-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4k.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-mult.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-14.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-49.c: Mark functions noinline.
	* gcc.dg/vect/vect-21.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-9.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-80.c: Mark functions noinline.
	* gcc.dg/vect/vect-63.c: Mark functions noinline.
	* gcc.dg/vect/vect-46.c: Mark functions noinline.
	* gcc.dg/vect/vect-29.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-11.c: Mark functions noinline.
	* gcc.dg/vect/vect-88.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-u16b.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-83_64.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-4b.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-pattern-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8b.c: Mark functions noinline.
	* gcc.dg/vect/vect-30.c: Mark functions noinline.
	* gcc.dg/vect/vect-13.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-8a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-same-dr.c: Mark functions noinline.
	* gcc.dg/vect/vect-72.c: Mark functions noinline.
	* gcc.dg/vect/vect-38.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-u16.c: Mark functions noinline.
	* gcc.dg/vect/vect-97.c: Mark functions noinline.
	* gcc.dg/vect/vect-111.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4d.c: Mark functions noinline.
	* gcc.dg/vect/vect-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-mult-char-ls.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4l.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-15.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-1short.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u16-i4.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-i8.c: Mark functions noinline.
	* gcc.dg/vect/vect-22.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-64.c: Mark functions noinline.
	* gcc.dg/vect/vect-89.c: Mark functions noinline.
	* gcc.dg/vect/no-tree-dom-vect-bug.c: Mark functions noinline.
	* gcc.dg/vect/vect-103.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-51.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-pr29145.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-pattern-2c.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s8c.c: Mark functions noinline.
	* gcc.dg/vect/vect-11a.c: Mark functions noinline.
	* gcc.dg/vect/vect-31.c: Mark functions noinline.
	* gcc.dg/vect/vect-14.c: Mark functions noinline.
	* gcc.dg/vect/vect-73.c: Mark functions noinline.
	* gcc.dg/vect/vect-56.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-98.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-float.c: Mark functions noinline.
	* gcc.dg/vect/vect-intfloat-conversion-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-112.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9a.c: Mark functions noinline.
	* gcc.dg/vect/vect-6.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-43.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4m.c: Mark functions noinline.
	* gcc.dg/vect/vect-widen-mult-s8.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-3.c: Mark functions noinline.
	* gcc.dg/vect/pr25413.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-16.c: Mark functions noinline.
	* gcc.dg/vect/vect-40.c: Mark functions noinline.
	* gcc.dg/vect/vect-23.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-4.c: Mark functions noinline.
	* gcc.dg/vect/vect-82.c: Mark functions noinline.
	* gcc.dg/vect/vect-65.c: Mark functions noinline.
	* gcc.dg/vect/vect-48.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-dot-s16a.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Mark functions noinline.
	* gcc.dg/vect/vect-104.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-fir.c: Mark functions noinline.
	* gcc.dg/vect/vect-iv-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-strided-u32-mult.c: Mark functions noinline.
	* gcc.dg/vect/vect-32.c: Mark functions noinline.
	* gcc.dg/vect/vect-15.c: Mark functions noinline.
	* gcc.dg/vect/no-trapping-math-2.c: Mark functions noinline.
	* gcc.dg/vect/vect-float-truncate-1.c: Mark functions noinline.
	* gcc.dg/vect/vect-91.c: Mark functions noinline.
	* gcc.dg/vect/vect-74.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-2a.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-3.c: Mark functions noinline.
	* gcc.dg/vect/vect-reduc-2char.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-6.c: Mark functions noinline.
	* gcc.dg/vect/vect-99.c: Mark functions noinline.
	* gcc.dg/vect/vect-113.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-9b.c: Mark functions noinline.
	* gcc.dg/vect/vect-outer-4f.c: Mark functions noinline.
	* gcc.dg/vect/vect-7.c: Mark functions noinline.
	* gcc.dg/vect/no-vfa-vect-61.c: Mark functions noinline.
	* gcc.dg/vect/vect-multitypes-4.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-outer-17.c: Mark functions noinline.
	* gcc.dg/vect/vect-24.c: Mark functions noinline.
	* gcc.dg/vect/no-scevccp-noreassoc-outer-5.c: Mark functions noinline.
	* gcc.dg/vect/vect-83.c: Mark functions noinline.
	* gcc.dg/vect/vect-66.c: Mark functions noinline.
	* gcc.dg/vect/wrapv-vect-reduc-2char.c: Mark functions noinline.

From-SVN: r128079
parent f1a72222
2007-09-04 Jan Hubicka <jh@suse.cz>
* gcc.dg/vect/vect-reduc-dot-s16b.c: Mark functions noinline.
* gcc.dg/vect/vect-105.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-6.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-53.c: Mark functions noinline.
* gcc.dg/vect/wrapv-vect-reduc-2short.c: Mark functions noinline.
* gcc.dg/vect/fast-math-vect-pr29925.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-u8a.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-7.c: Mark functions noinline.
* gcc.dg/vect/vect-50.c: Mark functions noinline.
* gcc.dg/vect/vect-33.c: Mark functions noinline.
* gcc.dg/vect/vect-16.c: Mark functions noinline.
* gcc.dg/vect/vect-widen-mult-sum.c: Mark functions noinline.
* gcc.dg/vect/vect-float-extend-1.c: Mark functions noinline.
* gcc.dg/vect/vect-92.c: Mark functions noinline.
* gcc.dg/vect/vect-75.c: Mark functions noinline.
* gcc.dg/vect/vect-58.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-2b.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-7.c: Mark functions noinline.
* gcc.dg/vect/no-section-anchors-vect-69.c: Mark functions noinline.
* gcc.dg/vect/vect-114.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4g.c: Mark functions noinline.
* gcc.dg/vect/vect-8.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-vect-iv-1.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-10.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-45.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-10a.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-5.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-18.c: Mark functions noinline.
* gcc.dg/vect/vect-42.c: Mark functions noinline.
* gcc.dg/vect/vect-25.c: Mark functions noinline.
* gcc.dg/vect/vect-vfa-01.c: Mark functions noinline.
* gcc.dg/vect/vect-67.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-3a.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u16-mult.c: Mark functions noinline.
* gcc.dg/vect/vect-106.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-7.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-37.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-2short.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-u8b.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-8.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-79.c: Mark functions noinline.
* gcc.dg/vect/vect-34.c: Mark functions noinline.
* gcc.dg/vect/vect-17.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-102a.c: Mark functions noinline.
* gcc.dg/vect/vect-align-1.c: Mark functions noinline.
* gcc.dg/vect/vect-93.c: Mark functions noinline.
* gcc.dg/vect/vect-widen-mult-s16.c: Mark functions noinline.
* gcc.dg/vect/vect-76.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u16-i2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-2c.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-5.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-8.c: Mark functions noinline.
* gcc.dg/vect/vect-115.c: Mark functions noinline.
* gcc.dg/vect/vect-9.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-vect-iv-2.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-1a.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-11.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-10b.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u32-i4.c: Mark functions noinline.
* gcc.dg/vect/vect-widen-mult-u8.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-6.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-19.c: Mark functions noinline.
* gcc.dg/vect/vect-60.c: Mark functions noinline.
* gcc.dg/vect/vect-26.c: Mark functions noinline.
* gcc.dg/vect/vect-vfa-02.c: Mark functions noinline.
* gcc.dg/vect/vect-85.c: Mark functions noinline.
* gcc.dg/vect/vect-68.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-3b.c: Mark functions noinline.
* gcc.dg/vect/vect-floatint-conversion-1.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-8.c: Mark functions noinline.
* gcc.dg/vect/vect-107.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-1.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-20.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-9.c: Mark functions noinline.
* gcc.dg/vect/vect-52.c: Mark functions noinline.
* gcc.dg/vect/vect-35.c: Mark functions noinline.
* gcc.dg/vect/vect-18.c: Mark functions noinline.
* gcc.dg/vect/vect-align-2.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-1.c: Mark functions noinline.
* gcc.dg/vect/vect-77.c: Mark functions noinline.
* gcc.dg/vect/vect-2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-2d.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-6.c: Mark functions noinline.
* gcc.dg/vect/vect-82_64.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-9.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i2-gap.c: Mark functions noinline.
* gcc.dg/vect/vect-116.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-store-u16-i4.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-vect-iv-3.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-1b.c: Mark functions noinline.
* gcc.dg/vect/wrapv-vect-reduc-dot-s8b.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-12.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-7.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-101.c: Mark functions noinline.
* gcc.dg/vect/vect-44.c: Mark functions noinline.
* gcc.dg/vect/vect-27.c: Mark functions noinline.
* gcc.dg/vect/vect-vfa-03.c: Mark functions noinline.
* gcc.dg/vect/vect-86.c: Mark functions noinline.
* gcc.dg/vect/vect-100.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-1.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-3c.c: Mark functions noinline.
* gcc.dg/vect/vect-floatint-conversion-2.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u32-mult.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i8.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-fir-lb.c: Mark functions noinline.
* gcc.dg/vect/vect-108.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-9.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-21.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-2.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-2a.c: Mark functions noinline.
* gcc.dg/vect/vect-11.c: Mark functions noinline.
* gcc.dg/vect/vect-70.c: Mark functions noinline.
* gcc.dg/vect/vect-36.c: Mark functions noinline.
* gcc.dg/vect/vect-19.c: Mark functions noinline.
* gcc.dg/vect/vect-95.c: Mark functions noinline.
* gcc.dg/vect/vect-78.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u16-i4.c: Mark functions noinline.
* gcc.dg/vect/vect-3.c: Mark functions noinline.
* gcc.dg/vect/vect-all.c: Mark functions noinline.
* gcc.dg/vect/vect-117.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-13.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-1c.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u16-i2.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Mark functions noinline.
* gcc.dg/vect/vect-20.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-8.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-noreassoc-outer-1.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-102.c: Mark functions noinline.
* gcc.dg/vect/vect-62.c: Mark functions noinline.
* gcc.dg/vect/vect-28.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-10.c: Mark functions noinline.
* gcc.dg/vect/vect-vfa-04.c: Mark functions noinline.
* gcc.dg/vect/vect-87.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-u16a.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-2.c: Mark functions noinline.
* gcc.dg/vect/vect-intfloat-conversion-4a.c: Mark functions noinline.
* gcc.dg/vect/vect-109.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-22.c: Mark functions noinline.
* gcc.dg/vect/no-section-anchors-vect-outer-4h.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-3.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-2b.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-s8a.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-57.c: Mark functions noinline.
* gcc.dg/vect/vect-12.c: Mark functions noinline.
* gcc.dg/vect/vect-71.c: Mark functions noinline.
* gcc.dg/vect/vect-54.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-mult.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-3.c: Mark functions noinline.
* gcc.dg/vect/vect-96.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-1char.c: Mark functions noinline.
* gcc.dg/vect/vect-110.c: Mark functions noinline.
* gcc.dg/vect/vect-intfloat-conversion-1.c: Mark functions noinline.
* gcc.dg/vect/vect-4.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-store-u32-i2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4k.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-1.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-mult.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-14.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-49.c: Mark functions noinline.
* gcc.dg/vect/vect-21.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-9.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-noreassoc-outer-2.c: Mark functions noinline.
* gcc.dg/vect/vect-80.c: Mark functions noinline.
* gcc.dg/vect/vect-63.c: Mark functions noinline.
* gcc.dg/vect/vect-46.c: Mark functions noinline.
* gcc.dg/vect/vect-29.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-11.c: Mark functions noinline.
* gcc.dg/vect/vect-88.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i2.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-u16b.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-3.c: Mark functions noinline.
* gcc.dg/vect/vect-83_64.c: Mark functions noinline.
* gcc.dg/vect/vect-intfloat-conversion-4b.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-4.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-pattern-2c.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-s8b.c: Mark functions noinline.
* gcc.dg/vect/vect-30.c: Mark functions noinline.
* gcc.dg/vect/vect-13.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u8-i2-gap.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-8a.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-same-dr.c: Mark functions noinline.
* gcc.dg/vect/vect-72.c: Mark functions noinline.
* gcc.dg/vect/vect-38.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-4.c: Mark functions noinline.
* gcc.dg/vect/vect-widen-mult-u16.c: Mark functions noinline.
* gcc.dg/vect/vect-97.c: Mark functions noinline.
* gcc.dg/vect/vect-111.c: Mark functions noinline.
* gcc.dg/vect/vect-intfloat-conversion-2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4d.c: Mark functions noinline.
* gcc.dg/vect/vect-5.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-mult-char-ls.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-store-a-u8-i2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4l.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-2.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-15.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-1short.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u16-i4.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u32-i8.c: Mark functions noinline.
* gcc.dg/vect/vect-22.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-noreassoc-outer-3.c: Mark functions noinline.
* gcc.dg/vect/vect-64.c: Mark functions noinline.
* gcc.dg/vect/vect-89.c: Mark functions noinline.
* gcc.dg/vect/no-tree-dom-vect-bug.c: Mark functions noinline.
* gcc.dg/vect/vect-103.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-51.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-pr29145.c: Mark functions noinline.
* gcc.dg/vect/wrapv-vect-reduc-pattern-2c.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-5.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-s8c.c: Mark functions noinline.
* gcc.dg/vect/vect-11a.c: Mark functions noinline.
* gcc.dg/vect/vect-31.c: Mark functions noinline.
* gcc.dg/vect/vect-14.c: Mark functions noinline.
* gcc.dg/vect/vect-73.c: Mark functions noinline.
* gcc.dg/vect/vect-56.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-2.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-5.c: Mark functions noinline.
* gcc.dg/vect/vect-98.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-float.c: Mark functions noinline.
* gcc.dg/vect/vect-intfloat-conversion-3.c: Mark functions noinline.
* gcc.dg/vect/vect-112.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-9a.c: Mark functions noinline.
* gcc.dg/vect/vect-6.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-43.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4m.c: Mark functions noinline.
* gcc.dg/vect/vect-widen-mult-s8.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-3.c: Mark functions noinline.
* gcc.dg/vect/pr25413.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-16.c: Mark functions noinline.
* gcc.dg/vect/vect-40.c: Mark functions noinline.
* gcc.dg/vect/vect-23.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-noreassoc-outer-4.c: Mark functions noinline.
* gcc.dg/vect/vect-82.c: Mark functions noinline.
* gcc.dg/vect/vect-65.c: Mark functions noinline.
* gcc.dg/vect/vect-48.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-dot-s16a.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Mark functions noinline.
* gcc.dg/vect/vect-104.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-fir.c: Mark functions noinline.
* gcc.dg/vect/vect-iv-6.c: Mark functions noinline.
* gcc.dg/vect/vect-strided-u32-mult.c: Mark functions noinline.
* gcc.dg/vect/vect-32.c: Mark functions noinline.
* gcc.dg/vect/vect-15.c: Mark functions noinline.
* gcc.dg/vect/no-trapping-math-2.c: Mark functions noinline.
* gcc.dg/vect/vect-float-truncate-1.c: Mark functions noinline.
* gcc.dg/vect/vect-91.c: Mark functions noinline.
* gcc.dg/vect/vect-74.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-2a.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-3.c: Mark functions noinline.
* gcc.dg/vect/vect-reduc-2char.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-6.c: Mark functions noinline.
* gcc.dg/vect/vect-99.c: Mark functions noinline.
* gcc.dg/vect/vect-113.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-9b.c: Mark functions noinline.
* gcc.dg/vect/vect-outer-4f.c: Mark functions noinline.
* gcc.dg/vect/vect-7.c: Mark functions noinline.
* gcc.dg/vect/no-vfa-vect-61.c: Mark functions noinline.
* gcc.dg/vect/vect-multitypes-4.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-outer-17.c: Mark functions noinline.
* gcc.dg/vect/vect-24.c: Mark functions noinline.
* gcc.dg/vect/no-scevccp-noreassoc-outer-5.c: Mark functions noinline.
* gcc.dg/vect/vect-83.c: Mark functions noinline.
* gcc.dg/vect/vect-66.c: Mark functions noinline.
* gcc.dg/vect/wrapv-vect-reduc-2char.c: Mark functions noinline.
2007-09-04 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/33187
......@@ -3,6 +3,7 @@
#include <stdlib.h>
#include "tree-vect.h"
__attribute__ ((noinline))
void interp_pitch(float *exc, float *interp, int pitch, int len)
{
int i,k;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j,k=0;
int sum,x;
......
......@@ -6,7 +6,7 @@
#define N 40
int a[200*N];
void
__attribute__ ((noinline)) void
foo (){
int i,j;
int sum,s=0;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum,x;
......
......@@ -5,7 +5,7 @@
#define N 40
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum,s=0;
......@@ -21,6 +21,7 @@ foo (){
return s;
}
__attribute__ ((noinline))
int bar (int i, int j)
{
return (i + j);
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum,x;
......
......@@ -6,7 +6,7 @@ signed short block[N][N];
/* memory references in the inner-loop */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff = 0;
......
......@@ -8,7 +8,7 @@
int a[N];
int b[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum,x,y;
......
......@@ -8,7 +8,7 @@
int a[N];
int b[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum,x,y;
......
......@@ -8,7 +8,7 @@
int a[N];
int b[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum,x,y;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum;
......
......@@ -8,7 +8,7 @@
int a[N];
short b[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
unsigned short in[N];
unsigned int
__attribute__ ((noinline)) unsigned int
foo (short scale){
int i;
unsigned short j;
......@@ -24,7 +24,7 @@ foo (short scale){
return sum;
}
unsigned short
__attribute__ ((noinline)) unsigned short
bar (void)
{
unsigned short j;
......
......@@ -5,7 +5,7 @@
#define N 64
unsigned short
__attribute__ ((noinline)) unsigned short
foo (short scale){
int i;
unsigned short j;
......@@ -22,7 +22,7 @@ foo (short scale){
return sum;
}
unsigned short
__attribute__ ((noinline)) unsigned short
bar (void)
{
unsigned short j;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int x){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i;
unsigned short j;
......
......@@ -9,7 +9,7 @@ int a[N];
int b[N];
int c[N];
int
__attribute__ ((noinline)) int
foo (){
int i;
unsigned short j;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum;
......
......@@ -8,7 +8,7 @@
unsigned short a[N];
unsigned int b[N];
int
__attribute__ ((noinline)) int
foo (){
unsigned short i,j;
unsigned short sum;
......
......@@ -8,7 +8,7 @@
int a[N];
int b[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum,x,y;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i;
unsigned short j;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum;
......
......@@ -9,7 +9,7 @@ int a[N];
/* induction variable k advances through inner and outer loops. */
int
__attribute__ ((noinline)) int
foo (int n){
int i,j,k=0;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (){
int i,j;
int sum;
......
......@@ -5,7 +5,7 @@
#define N 40
int
__attribute__ ((noinline)) int
foo (int * __restrict__ b, int k){
int i,j;
int sum,x;
......
......@@ -9,7 +9,7 @@ unsigned short in[N];
unsigned short coef[N];
unsigned short a[N];
unsigned int
__attribute__ ((noinline)) unsigned int
foo (short scale){
int i;
unsigned short j;
......
......@@ -6,7 +6,7 @@
#define N 40
int
__attribute__ ((noinline)) int
foo (int *a){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum;
......
......@@ -7,7 +7,7 @@
int a[N];
int
__attribute__ ((noinline)) int
foo (int n){
int i,j;
int sum;
......
......@@ -5,7 +5,7 @@
#define N 26
int main1 (int X)
__attribute__ ((noinline)) int main1 (int X)
{
int s = X;
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int arr1[N];
......
......@@ -6,6 +6,7 @@
#define N 26
__attribute__ ((noinline))
unsigned int main1 ()
{
unsigned short i;
......
......@@ -33,6 +33,7 @@ struct test2{
struct test1 tmp1[4];
struct test2 tmp2[4];
__attribute__ ((noinline))
int main1 ()
{
int i,j;
......
......@@ -10,6 +10,7 @@ unsigned int out[N];
/* Outer-loop vectorization. */
__attribute__ ((noinline))
void
foo (){
int i,j;
......
......@@ -6,7 +6,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
long stack_vars_sorted[32];
int
__attribute__ ((noinline)) int
main1 (long n)
{
long si;
......
......@@ -3,6 +3,7 @@
#include <stdarg.h>
#include "tree-vect.h"
__attribute__ ((noinline))
void with_restrict(int * __restrict p)
{
int i;
......@@ -13,6 +14,7 @@ void with_restrict(int * __restrict p)
}
}
__attribute__ ((noinline))
void without_restrict(int * p)
{
int i;
......
......@@ -15,6 +15,7 @@ struct extraction
static int a[N] = {1,2,3,4,5,6,7,8,9};
static int b[N] = {2,3,4,5,6,7,8,9,0};
__attribute__ ((noinline))
int main1 (int x, int y) {
int i;
struct extraction *p;
......
......@@ -16,6 +16,7 @@ static int a[N] = {1,2,3,4,5,6,7,8,9};
static int b[N] = {2,3,4,5,6,7,8,9,9};
volatile int foo;
__attribute__ ((noinline))
int main1 (int x, int y) {
int i;
struct extraction *p;
......
......@@ -16,6 +16,7 @@ static int a[N] = {1,2,3,4,5,6,7,8,9};
static int b[N] = {2,3,4,5,6,7,8,9,9};
volatile int foo;
__attribute__ ((noinline))
int main1 (int x, int y) {
int i;
struct extraction *p;
......
......@@ -6,6 +6,7 @@
#define N 16
char x[N] __attribute__ ((__aligned__(16)));
__attribute__ ((noinline))
int main1 (char *y)
{
struct {
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -20,7 +21,7 @@ void bar (float *pa, float *pb, float *pc)
}
int
__attribute__ ((noinline)) int
main1 (float *pa)
{
int i;
......@@ -38,7 +39,7 @@ main1 (float *pa)
return 0;
}
int
__attribute__ ((noinline)) int
main2 (float * pa)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (const float *pa, const float *pb, const float *pc)
{
int i;
......@@ -27,7 +28,7 @@ void bar (const float *pa, const float *pb, const float *pc)
vect-44.c is similar to this one with one difference:
Aliasing is not a problem. */
int
__attribute__ ((noinline)) int
main1 (float *pa, float *pb, float *pc)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -27,7 +28,7 @@ void bar (float *pa, float *pb, float *pc)
vect-48.c is similar to this one with one difference:
aliasing is not a problem. */
int
__attribute__ ((noinline)) int
main1 (float *pb, float *pc)
{
float pa[N] __attribute__ ((__aligned__(16)));
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (const float *pa, const float *pb, const float *pc)
{
int i;
......@@ -27,7 +28,7 @@ void bar (const float *pa, const float *pb, const float *pc)
vect-50.c is similar to this one with one difference:
Aliasing is not a problem. */
int
__attribute__ ((noinline)) int
main1 (int n, float *pa, float *pb, float *pc)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (const float *pa, const float *pb, const float *pc)
{
int i;
......@@ -27,7 +28,7 @@ void bar (const float *pa, const float *pb, const float *pc)
vect-52.c is similar to this one with one difference:
aliasing is not a problem. */
int
__attribute__ ((noinline)) int
main1 (int n, float *pb, float *pc)
{
float pa[N] __attribute__ ((__aligned__(16)));
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -28,7 +29,7 @@ void bar (float *pa, float *pb, float *pc)
vect-56.c is similar to this one with two differences:
aliasing is a problem, and the write access is aligned. */
int
__attribute__ ((noinline)) int
main1 (float *pa)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -29,7 +30,7 @@ void bar (float *pa, float *pb, float *pc)
vect-60.c is similar to this one with two differences:
aliasing is not a problem, and the write access is unaligned. */
int
__attribute__ ((noinline)) int
main1 (int n , float *pa)
{
int i;
......
......@@ -12,7 +12,7 @@ float fc[N] __attribute__ ((__aligned__(16))) = {0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 7
/* Like vect-80.c but the pointers are not annotated as restricted,
and therefore can't be antialiased. */
int
__attribute__ ((noinline)) int
main1 (float *pa, float *pb, float *pc)
{
int i;
......
......@@ -11,6 +11,7 @@ struct
double d[N];
} a;
__attribute__ ((noinline))
int main1()
{
int i;
......
......@@ -15,6 +15,7 @@ struct extraction
static int a[N] = {1,2,3,4,5,6,7,8,9};
static int b[N] = {2,3,4,5,6,7,8,9,0};
__attribute__ ((noinline))
int main1 () {
int i;
struct extraction *p;
......@@ -38,6 +39,7 @@ int main1 () {
return 0;
}
__attribute__ ((noinline))
int main2 () {
int i;
int c[N] = {1,2,3,4,5,6,7,8,9};
......
......@@ -17,6 +17,7 @@ static int b[N] = {17,24,7,0,2,3,4,31,82};
static int c[N] = {9,17,24,7,0,2,3,4,31};
volatile int foo;
__attribute__ ((noinline))
int main1 (int x, int y) {
int i;
struct extraction *p;
......
......@@ -17,6 +17,7 @@ static int b[N][N] = {{17,24,7},{0,2,3},{4,31,82}};
static int c[N][N] = {{1,2,3},{4,6,8},{8,9,9}};
volatile int foo;
__attribute__ ((noinline))
int main1 (int x) {
int i,j;
struct extraction *p;
......
......@@ -16,6 +16,7 @@ static int a[N][N] = {{1,2,3,11},{4,5,6,12},{7,8,9,13},{34,45,67,83}};
static int b[N][N] = {{17,28,15,23},{0,2,3,24},{4,31,82,25},{29,31,432,256}};
static int c[N][N] = {{1,2,3,11},{4,9,13,34},{45,67,83,13},{34,45,67,83}};
__attribute__ ((noinline))
int main1 (int x) {
int i,j;
struct extraction *p;
......
......@@ -9,6 +9,7 @@
static int a[N] = {1,2,3,4,5,6,7,8,9};
static int b[N] = {2,3,4,5,6,7,8,9,0};
__attribute__ ((noinline))
int main1 () {
int i;
int *p, *q, *p1, *q1;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -16,6 +16,7 @@ int ic[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,
int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,
0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
__attribute__ ((noinline))
int main1 (int n)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
static __attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -23,6 +23,7 @@ struct test1{
int l;
};
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,6 +5,8 @@
#include "tree-vect.h"
extern void abort (void);
__attribute__ ((noinline))
void foo()
{
static unsigned char A[256], B[256], C[256];
......
......@@ -20,6 +20,7 @@ static int c[N][N] = {{ 1, 2, 3, 4, 5},
volatile int foo;
__attribute__ ((noinline))
int main1 (int A[N][N], int n)
{
......
......@@ -5,6 +5,8 @@
#include "tree-vect.h"
extern void abort (void);
__attribute__ ((noinline))
void u ()
{
unsigned int A[4] = {0x08000000,0xffffffff,0xff0000ff,0xf0000001};
......@@ -19,6 +21,8 @@ void u ()
if (C[i] != Answer[i])
abort ();
}
__attribute__ ((noinline))
void s()
{
signed int A[4] = {0x08000000,0xffffffff,0xff0000ff,0xf0000001};
......@@ -34,6 +38,7 @@ void s()
abort ();
}
__attribute__ ((noinline))
int main1 ()
{
u();
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -8,6 +8,7 @@
int a[N];
int results[N] = {0,1,2,3,0,0,0,0,0,0,0,0,12,13,14,15};
__attribute__ ((noinline))
int main1()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 240
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -4,7 +4,8 @@
#include "tree-vect.h"
#define N 16
__attribute__ ((noinline))
int main1 ()
{
char cb[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 64
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 128
__attribute__ ((noinline))
int main1 (int n, int *p)
{
int i;
......
......@@ -7,6 +7,7 @@
/* unaligned store. */
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -7,6 +7,7 @@
/* unaligned load. */
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -8,6 +8,7 @@
/* unaligned store. */
__attribute__ ((noinline))
int main1 (int off)
{
int i;
......
......@@ -8,6 +8,7 @@
/* unaligned load. */
__attribute__ ((noinline))
int main1 (int off)
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 20
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -9,6 +9,7 @@ float b[N] = {0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30};
float a[N];
float c[N];
__attribute__ ((noinline))
int main1 (int n)
{
int i=0;
......@@ -29,6 +30,7 @@ int main1 (int n)
return 0;
}
__attribute__ ((noinline))
int main2 (unsigned int n)
{
int i=0;
......
......@@ -18,6 +18,7 @@ struct s{
struct t e; /* unaligned (offset 2N+4N+4 B) */
};
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
struct {
......
......@@ -11,6 +11,7 @@ struct test {
extern struct test s;
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
struct {
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
union {
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
struct {
......
......@@ -8,6 +8,7 @@
double cb[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
double ca[N];
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 20
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -25,7 +26,7 @@ void bar (float *pa, float *pb, float *pc)
vect-46.c is similar to this one with one difference:
the loop bound is unknown. */
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -25,7 +26,7 @@ void bar (float *pa, float *pb, float *pc)
The loop bound is known and divisible by the vectorization factor.
No aliasing problems. */
int
__attribute__ ((noinline)) int
main1 (float * __restrict__ pa)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -27,7 +28,7 @@ void bar (float *pa, float *pb, float *pc)
vect-45.c is similar to this one with one difference:
can't prove that pointers don't alias. */
int
__attribute__ ((noinline)) int
main1 (float * __restrict__ pa, float * __restrict__ pb, float * __restrict__ pc)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -25,7 +26,7 @@ void bar (float *pa, float *pb, float *pc)
vect-40.c is similar to this one with one difference:
the loop bound is known. */
int
__attribute__ ((noinline)) int
main1 (int n)
{
int i;
......
......@@ -15,7 +15,7 @@
vect-49.c is similar to this one with one difference:
aliasing is a problem. */
int
__attribute__ ((noinline)) int
main1 (float *pb, float *pc)
{
float pa[N] __attribute__ ((__aligned__(16)));
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -19,7 +20,7 @@ void bar (float *pa, float *pb, float *pc)
return;
}
int
__attribute__ ((noinline)) int
main1 (int n, float * __restrict__ pa, float * __restrict__ pb, float * __restrict__ pc)
{
int i;
......
......@@ -15,7 +15,7 @@
vect-53.c is similar to this one with one difference:
aliasing is a problem. */
int
__attribute__ ((noinline)) int
main1 (int n, float *pb, float *pc)
{
float pa[N] __attribute__ ((__aligned__(16)));
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -25,7 +26,7 @@ void bar (float *pa, float *pb, float *pc)
vect-58.c is similar to this one with one difference:
the loop bound is unknown. */
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -29,7 +30,7 @@ void bar (float *pa, float *pb, float *pc)
vect-57.c is similar to this one with two differences:
aliasing is a problem, and the write access has unknown alignment. */
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -25,7 +26,7 @@ void bar (float *pa, float *pb, float *pc)
vect-54.c is similar to this one with one difference:
the loop bound is known. */
int
__attribute__ ((noinline)) int
main1 (int n)
{
int i;
......
......@@ -8,6 +8,7 @@
float results1[N] = {192.00,240.00,288.00,336.00,384.00,432.00,480.00,528.00,0.00};
float results2[N] = {0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,0.00,54.00,120.00,198.00,288.00,390.00,504.00,630.00};
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pa, float *pb, float *pc)
{
int i;
......@@ -29,7 +30,7 @@ void bar (float *pa, float *pb, float *pc)
vect-61.c is similar to this one with two differences:
aliasing is not a problem, and the write access has unknown alignment. */
int
__attribute__ ((noinline)) int
main1 (int n)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -6,6 +6,7 @@
#define N 16
#define M 4
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 (int a, int b)
{
int i, j;
......
......@@ -17,6 +17,7 @@ struct test1{
struct s e; /* array e.n is aligned */
};
__attribute__ ((noinline))
int main1 ()
{
int i,j;
......
......@@ -5,6 +5,7 @@
#define N 128
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -17,6 +17,7 @@ struct test1{
struct s e[N]; /* array e.n is aligned */
};
__attribute__ ((noinline))
int main1 ()
{
int i,j;
......
......@@ -7,6 +7,7 @@
/* indirect access. */
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -7,6 +7,7 @@
/* unaligned load. */
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -9,6 +9,7 @@ int ic[N*2];
#define ia (ic+N)
__attribute__ ((noinline))
int main1 ()
{
int i, j;
......
......@@ -13,7 +13,7 @@ float a[N] __attribute__ ((__aligned__(16)));
float b[N+4] __attribute__ ((__aligned__(16))) = {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 7.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0};
float c[N] __attribute__ ((__aligned__(16))) = {0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 7.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5};
int
__attribute__ ((noinline)) int
main1 (float *__restrict__ pa, float * __restrict__ pb, float * __restrict__ pc)
{
int i;
......
......@@ -12,6 +12,7 @@
int ib[N+OFF] __attribute__ ((__aligned__(16))) = {0, 1, 3, 5, 7, 11, 13, 17, 0, 2, 6, 10, 14, 22, 26, 34};
__attribute__ ((noinline))
int main1 (int *ib)
{
int i;
......
......@@ -12,6 +12,7 @@
int ib[N+OFF] __attribute__ ((__aligned__(16))) = {0, 1, 3, 5, 7, 11, 13, 17, 0, 2, 6, 10};
__attribute__ ((noinline))
int main1 (int *pib)
{
int i;
......
......@@ -12,6 +12,7 @@
int ib[N+OFF] __attribute__ ((__aligned__(16))) = {0, 1, 3, 5, 7, 11, 13, 17, 0, 2, 6, 10, 14, 22, 26, 34};
__attribute__ ((noinline))
int main1 (int *ib, int off)
{
int i;
......
......@@ -13,6 +13,7 @@
int ib[N+OFF] __attribute__ ((__aligned__(16))) = {0, 1, 3, 5, 7, 11, 13, 17, 0, 2, 6, 10, 14, 22, 26, 34};
int off = 8;
__attribute__ ((noinline))
int main1 (int *ib)
{
int i;
......
......@@ -8,6 +8,7 @@
float b[N] = {0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30};
float a[N];
__attribute__ ((noinline))
int main1 (int n)
{
int i;
......
......@@ -13,7 +13,7 @@ float fc[N] __attribute__ ((__aligned__(16))) = {0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 7
the expression that represents the first location accessed - is
more involved than just an ssa_name. */
int
__attribute__ ((noinline)) int
main1 (float * __restrict__ pa, float * __restrict__ pb, float *__restrict__ pc)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
long long unsigned int ca[N];
......
......@@ -7,6 +7,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
long long unsigned int ca[N];
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
long long unsigned int ca[N];
......
......@@ -7,6 +7,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
long long unsigned int ca[N];
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 (int *a)
{
int i, j, k;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 (int n)
{
int i, j, k;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 (int n, int *a)
{
int i, j, k;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 (int n, int *a)
{
int i, j, k;
......
......@@ -11,6 +11,7 @@ struct tmp_struct
int y[N];
};
__attribute__ ((noinline))
int main1 ()
{
int i, *q;
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -13,7 +13,7 @@ extern int a[N];
the same alignment. Peeling to align one of the accesses will
align the other. */
int
__attribute__ ((noinline)) int
main1 (int * pa)
{
int i;
......@@ -31,7 +31,7 @@ main1 (int * pa)
the same alignment. Peeling to align one of the accesses will
align the other. */
int
__attribute__ ((noinline)) int
main2 ()
{
int i;
......@@ -44,7 +44,7 @@ main2 ()
return 0;
}
int
__attribute__ ((noinline)) int
main3 ()
{
int i;
......
......@@ -17,7 +17,7 @@ float pc[N] __attribute__ ((__aligned__(16))) = {0,1,2,3,4,5,6,7,8,9,10,11,12,13
can use this information (generate prolog and epilog loops
with known number of iterations, and only if needed). */
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......@@ -37,7 +37,7 @@ main1 ()
return 0;
}
int
__attribute__ ((noinline)) int
main2 ()
{
int i;
......@@ -57,7 +57,7 @@ main2 ()
return 0;
}
int
__attribute__ ((noinline)) int
main3 (int n)
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 3001
int
__attribute__ ((noinline))
main1 (float *pa)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 256
__attribute__ ((noinline))
void bar (float *pd, float *pa, float *pb, float *pc)
{
int i;
......@@ -22,7 +23,7 @@ void bar (float *pd, float *pa, float *pb, float *pc)
}
int
__attribute__ ((noinline)) int
main1 (int n, float * __restrict__ pd, float * __restrict__ pa, float * __restrict__ pb, float * __restrict__ pc)
{
int i;
......
......@@ -11,6 +11,7 @@ struct tmp
int ia[N];
};
__attribute__ ((noinline))
int main1 (int off)
{
struct tmp sb[N];
......
......@@ -5,6 +5,7 @@
#define N 16
__attribute__ ((noinline))
int main1 ()
{
struct {
......
......@@ -6,6 +6,7 @@
#define N 4
#define DOT4( a, b ) ( a[0]*b[0] + a[1]*b[1] + a[2]*b[2] + a[3]*b[3] )
__attribute__ ((noinline))
int main1 (int ia[][N])
{
int i, j;
......
......@@ -2,6 +2,7 @@
int ca[100];
__attribute__ ((noinline))
void foo (int n)
{
unsigned int i;
......
......@@ -14,7 +14,7 @@ struct foo {
int y[N];
} __attribute__((packed));
int
__attribute__ ((noinline)) int
main1 (struct foo * __restrict__ p)
{
int i;
......
......@@ -18,6 +18,7 @@ struct foo {
struct foo f2;
int z[16] = {0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
__attribute__ ((noinline))
void fbar(struct foo *fp)
{
int i,j;
......
......@@ -13,6 +13,7 @@ float fresults1[N] = {192.00,240.00,288.00,336.00,384.00,432.00,480.00,528.00,48
float fresults2[N] = {0.00,6.00,12.00,18.00,24.00,30.00,36.00,42.00,0.00,54.00,120.00,198.00,288.00,390.00,504.00,630.00};
/****************************************************/
__attribute__ ((noinline))
void icheck_results (int *a, int *results)
{
int i;
......@@ -23,6 +24,7 @@ void icheck_results (int *a, int *results)
}
}
__attribute__ ((noinline))
void fcheck_results (float *a, float *results)
{
int i;
......@@ -33,31 +35,31 @@ void fcheck_results (float *a, float *results)
}
}
void
__attribute__ ((noinline)) void
fbar_mul (float *a)
{
fcheck_results (a, fmul_results);
}
void
__attribute__ ((noinline)) void
fbar_add (float *a)
{
fcheck_results (a, fadd_results);
}
void
__attribute__ ((noinline)) void
ibar_add (int *a)
{
icheck_results (a, iadd_results);
}
void
__attribute__ ((noinline)) void
fbar1 (float *a)
{
fcheck_results (a, fresults1);
}
void
__attribute__ ((noinline)) void
fbar2 (float *a)
{
fcheck_results (a, fresults2);
......@@ -66,7 +68,7 @@ fbar2 (float *a)
/* All of the loops below are currently vectorizable. */
int
__attribute__ ((noinline)) int
main1 ()
{
int i,j;
......
......@@ -5,7 +5,7 @@
#define N 32
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 32
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 32
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 32
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
int int_arr[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
short sb[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,-3,-6,-9,-12,-15,-18,-21,-24,-27,-30,-33,-36,-39,-42,-45};
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
unsigned short usb[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,65533,65530,65527,65524,65521,65518,65515,65512,65509,65506,65503,65500,65497,65494,65491};
......
......@@ -6,7 +6,7 @@
#define N 16
int result[N] = {8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38};
int main1 (int X)
__attribute__ ((noinline)) int main1 (int X)
{
int arr[N];
int k = X;
......
......@@ -5,7 +5,7 @@
#define N 16
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int arr1[N];
int k = 0;
......
......@@ -5,7 +5,7 @@
#define N 16
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int arr1[N];
int arr2[N];
......
......@@ -5,7 +5,7 @@
#define N 16
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
unsigned int arr1[N];
unsigned short arr2[N];
......
......@@ -5,7 +5,7 @@
#define N 16
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
float arr[N];
float f = 1.0;
......
......@@ -5,7 +5,7 @@
#define N 16
int main1 (int X)
__attribute__ ((noinline)) int main1 (int X)
{
int arr1[N+1];
int arr2[N+1];
......
......@@ -6,7 +6,7 @@
#define N 16
int result[N] = {8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38};
int main1 (int X)
__attribute__ ((noinline)) int main1 (int X)
{
int arr[N];
int k = 3;
......
......@@ -5,7 +5,7 @@
#define N 26
int main1 (short X)
__attribute__ ((noinline)) int main1 (short X)
{
unsigned char a[N];
unsigned short b[N];
......
......@@ -5,7 +5,7 @@
#define N 26
int main1 (short X)
__attribute__ ((noinline)) int main1 (short X)
{
signed char a[N];
short b[N];
......
......@@ -6,7 +6,7 @@
#define N 26
int a[N];
int main1 (int X)
__attribute__ ((noinline)) int main1 (int X)
{
int s = X;
int i;
......
......@@ -18,7 +18,7 @@ int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,
which will also align the access to 'ia[i+3]', and the loop could be
vectorized on all targets that support unaligned loads. */
int main1 (int n)
__attribute__ ((noinline)) int main1 (int n)
{
int i;
......@@ -46,7 +46,7 @@ int main1 (int n)
This will not align the access 'sa[i+3]' (for which we need to
peel 5 iterations), so the loop can not be vectorized. */
int main2 (int n)
__attribute__ ((noinline)) int main2 (int n)
{
int i;
......
......@@ -13,7 +13,7 @@ signed short Y[N] __attribute__ ((__aligned__(16)));
int result[N];
/* Unsigned type promotion (hi->si) */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......@@ -24,7 +24,7 @@ foo1(int len) {
}
/* Signed type promotion (hi->si) */
int
__attribute__ ((noinline)) int
foo2(int len) {
int i;
......
......@@ -7,7 +7,7 @@
short x[N] __attribute__ ((__aligned__(16)));
int
__attribute__ ((noinline)) int
foo (int len, int *z) {
int i;
......
......@@ -5,7 +5,7 @@
#define N 32
int main1 ()
__attribute__ ((noinline)) int main1 ()
{
int i;
int ia[N];
......
......@@ -12,6 +12,7 @@ short sb[N] __attribute__ ((__aligned__(16))) =
char cb[N] __attribute__ ((__aligned__(16))) =
{0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
__attribute__ ((noinline))
int main1 (int n, int * __restrict__ pib,
short * __restrict__ psb,
char * __restrict__ pcb)
......
......@@ -22,6 +22,7 @@ unsigned int ib[N] = {0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,
which will also align the access to 'ia[i+3]', and the loop could be
vectorized on all targets that support unaligned loads. */
__attribute__ ((noinline))
int main1 (int n)
{
int i;
......@@ -51,6 +52,7 @@ int main1 (int n)
need to peel 5,1 iterations for VF=4,2 respectively, so the loop can not
be vectorized. */
__attribute__ ((noinline))
int main2 (int n)
{
int i;
......
......@@ -5,6 +5,7 @@
#define N 32
__attribute__ ((noinline))
int main1 ()
{
int i;
......
......@@ -18,6 +18,7 @@ unsigned char cc[N] __attribute__ ((__aligned__(16))) =
unsigned char cb[N] __attribute__ ((__aligned__(16))) =
{0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45,0,3,6,9,12,15,18,21,24,27,30,33,36,39,42,45};
__attribute__ ((noinline))
int main1 (int n,
unsigned int * __restrict__ pic, unsigned int * __restrict__ pib,
unsigned short * __restrict__ psc, unsigned short * __restrict__ psb,
......
......@@ -13,7 +13,7 @@ signed short X[N] __attribute__ ((__aligned__(16)));
signed short Y[N] __attribute__ ((__aligned__(16)));
unsigned char CX[N] __attribute__ ((__aligned__(16)));
void
__attribute__ ((noinline)) void
foo1(int len) {
int i;
int result1 = 0;
......
......@@ -12,7 +12,7 @@ unsigned short uresultY[N];
/* Unsigned type demotion (si->hi) */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......
......@@ -11,7 +11,7 @@ signed char X[N] __attribute__ ((__aligned__(16)));
short result[N];
/* Unsigned type promotion (qi->hi) */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......@@ -21,7 +21,7 @@ foo1(int len) {
}
/* Signed type promotion (qi->hi) */
int
__attribute__ ((noinline)) int
foo2(int len) {
int i;
......
......@@ -8,7 +8,7 @@ float out[N];
/* Outer-loop vectorization. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
......
......@@ -5,7 +5,7 @@
#define N 40
float image[N][N][N] __attribute__ ((__aligned__(16)));
void
__attribute__ ((noinline)) void
foo (){
int i,j,k;
......
......@@ -5,7 +5,7 @@
#define N 40
float image[2*N][N][N] __attribute__ ((__aligned__(16)));
void
__attribute__ ((noinline)) void
foo (){
int i,j,k;
......
......@@ -5,7 +5,7 @@
#define N 40
float image[2*N][2*N][N] __attribute__ ((__aligned__(16)));
void
__attribute__ ((noinline)) void
foo (){
int i,j,k;
......
......@@ -5,7 +5,7 @@
#define N 40
float image[N][N][N+1] __attribute__ ((__aligned__(16)));
void
__attribute__ ((noinline)) void
foo (){
int i,j,k;
......
......@@ -8,7 +8,7 @@ float out[N];
/* Outer-loop vectoriation. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -8,7 +8,7 @@ float out[N];
/* Outer-loop vectorization with misaliged accesses in the inner-loop. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -8,7 +8,7 @@ float out[N];
/* Outer-loop vectorization with non-consecutive access. Not vectorized yet. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -8,7 +8,7 @@ float out[N];
/* Outer-loop vectorization. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -11,7 +11,7 @@ float out[N];
/* Outer-loop vectorization. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -10,7 +10,7 @@ float out[N];
/* Outer-loop vectorization. */
void
__attribute__ ((noinline)) void
foo (){
int i,j;
float diff;
......
......@@ -11,7 +11,7 @@ unsigned char arr[N];
/* Outer-loop vectorization. */
/* Not vectorized due to multiple-types in the inner-loop. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff;
......@@ -28,7 +28,7 @@ foo (){
return s;
}
unsigned int
__attribute__ ((noinline)) unsigned int
bar (int i, unsigned int diff, unsigned short *in)
{
int j;
......
......@@ -11,7 +11,7 @@ unsigned char arr[N];
/* Outer-loop vectorization. */
/* Not vectorized due to multiple-types in the inner-loop. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff;
......@@ -28,7 +28,7 @@ foo (){
return s;
}
unsigned int
__attribute__ ((noinline)) unsigned int
bar (int i, unsigned int diff, unsigned short *in)
{
int j;
......
......@@ -11,7 +11,7 @@ unsigned char arr[N];
/* Outer-loop vectorization. */
/* Not vectorized due to multiple-types in the inner-loop. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff;
......@@ -28,7 +28,7 @@ foo (){
return s;
}
unsigned int
__attribute__ ((noinline)) unsigned int
bar (int i, unsigned int diff, unsigned short *in)
{
int j;
......
......@@ -11,7 +11,7 @@ unsigned char arr[N];
/* Outer-loop vectorization. */
/* Not vectorized due to multiple-types in the inner-loop. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff;
......@@ -28,7 +28,7 @@ foo (){
return s;
}
unsigned int
__attribute__ ((noinline)) unsigned int
bar (int i, unsigned int diff, unsigned short *in)
{
int j;
......
......@@ -10,7 +10,7 @@ unsigned int out[N];
/* Outer-loop vectorization. */
/* Not vectorized due to multiple-types in the inner-loop. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo (){
int i,j;
unsigned int diff;
......
......@@ -9,6 +9,7 @@
extern void abort(void);
__attribute__ ((noinline))
int main1 ()
{
float A[N] __attribute__ ((__aligned__(16)));
......
......@@ -13,6 +13,7 @@ float C[N] __attribute__ ((__aligned__(16)));
float D[N] __attribute__ ((__aligned__(16)));
extern void abort(void);
__attribute__ ((noinline))
int main1 ()
{
float s;
......
......@@ -14,6 +14,7 @@ float fir_out[N];
/* Currently not vectorized because the loop-count for the inner-loop
has a maybe_zero component. Will be fixed when we incorporate the
"cond_expr in rhs" patch. */
__attribute__ ((noinline))
void foo (){
int i,j,k;
float diff;
......@@ -39,6 +40,7 @@ void foo (){
}
/* Vectorized. Changing misalignment in the inner-loop. */
__attribute__ ((noinline))
void fir (){
int i,j,k;
float diff;
......
......@@ -15,6 +15,7 @@ float fir_out[N];
because the compiler doesn't realize that the inner-loop executes at
least once (cause k<4), and so there's no need to create a guard code
to skip the inner-loop in case it doesn't execute. */
__attribute__ ((noinline))
void foo (){
int i,j,k;
float diff;
......@@ -36,6 +37,7 @@ void foo (){
}
/* Vectorized. Changing misalignment in the inner-loop. */
__attribute__ ((noinline))
void fir (){
int i,j,k;
float diff;
......
......@@ -8,6 +8,7 @@
/* Test vectorization of reduction of unsigned-int. */
__attribute__ ((noinline))
void main1 (unsigned int x, unsigned int max_result, unsigned int min_result)
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 16
#define DIFF 242
void
__attribute__ ((noinline)) void
main1 (unsigned char x, unsigned char max_result, unsigned char min_result)
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 16
#define DIFF 242
void
__attribute__ ((noinline)) void
main1 (unsigned short x, unsigned short max_result, unsigned short min_result)
{
int i;
......
......@@ -8,6 +8,7 @@
/* Test vectorization of reduction of signed-int. */
__attribute__ ((noinline))
void main1 (int x, int max_result, int min_result)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 121
__attribute__ ((noinline))
void main1 (signed char x, signed char max_result, signed char min_result)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 242
__attribute__ ((noinline))
void main1 (short x, short max_result, short min_result)
{
int i;
......
......@@ -8,6 +8,7 @@
/* Test vectorization of reduction of unsigned-int in the presence
of unknown-loop-bound. */
__attribute__ ((noinline))
int main1 (int n, int res)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 242
__attribute__ ((noinline))
int main1 (float x, float max_result)
{
int i;
......
......@@ -7,7 +7,7 @@
extern void abort (void);
typedef unsigned char T;
void
__attribute__ ((noinline)) void
testmax (const T *c, T init, T result)
{
T lc[N], accum = init;
......@@ -23,7 +23,7 @@ testmax (const T *c, T init, T result)
abort ();
}
void
__attribute__ ((noinline)) void
testmin (const T *c, T init, T result)
{
T lc[N], accum = init;
......
......@@ -7,7 +7,7 @@
extern void abort (void);
typedef signed char T;
void
__attribute__ ((noinline)) void
testmax (const T *c, T init, T result)
{
T lc[N], accum = init;
......@@ -23,7 +23,7 @@ testmax (const T *c, T init, T result)
abort ();
}
void
__attribute__ ((noinline)) void
testmin (const T *c, T init, T result)
{
T lc[N], accum = init;
......
......@@ -7,7 +7,7 @@
extern void abort (void);
typedef unsigned short T;
void
__attribute__ ((noinline)) void
testmax (const T *c, T init, T result)
{
T lc[N], accum = init;
......@@ -23,7 +23,7 @@ testmax (const T *c, T init, T result)
abort ();
}
void
__attribute__ ((noinline)) void
testmin (const T *c, T init, T result)
{
T lc[N], accum = init;
......
......@@ -13,7 +13,7 @@ signed short Y[N] __attribute__ ((__aligned__(16)));
Detected as a dot-product pattern.
Vectorized on targets that support dot-product for signed shorts. */
int
__attribute__ ((noinline)) int
foo (int len)
{
int i;
......
......@@ -13,7 +13,7 @@ signed short Y[N] __attribute__ ((__aligned__(16)));
/* short->short->int dot product. Should be vectorized on architectures
supporting vectorized multiplication of two short args with short result,
e.g "mulv4hi3" and widenning sum */
int
__attribute__ ((noinline)) int
foo (int len)
{
int i;
......
......@@ -18,7 +18,7 @@ signed char Y[N] __attribute__ ((__aligned__(16)));
In the future could also be vectorized as widening-mult + widening-summation,
or with type-conversion support.
*/
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
int result = 0;
......
......@@ -26,7 +26,7 @@ signed char Y[N] __attribute__ ((__aligned__(16)));
Alternatively, the loop could also be vectorized as widening-mult + summation,
or with type-conversion support.
*/
short
__attribute__ ((noinline)) short
foo2(int len) {
int i;
short result = 0;
......
......@@ -13,7 +13,7 @@ signed char Y[N] __attribute__ ((__aligned__(16)));
/* char->int->int dot product.
Not detected as a dot-product pattern.
Currently fails to be vectorized due to presence of type conversions. */
int
__attribute__ ((noinline)) int
foo3(int len) {
int i;
int result = 0;
......
......@@ -14,7 +14,7 @@ unsigned short Y[N] __attribute__ ((__aligned__(16)));
/* short->short->int dot product.
Not detected as a dot-product pattern.
Requires support for non-widneing multiplication and widening-summation. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo1(int len) {
int i;
unsigned int result = 0;
......
......@@ -15,7 +15,7 @@ unsigned short Y[N] __attribute__ ((__aligned__(16)));
promotes the ushorts to int, and then the product is promoted to unsigned
int for the addition. Which results in an int->unsigned int cast, which
since no bits are modified in the cast should be trivially vectorizable. */
unsigned int
__attribute__ ((noinline)) unsigned int
foo2(int len) {
int i;
unsigned int result = 0;
......
......@@ -21,7 +21,7 @@ unsigned char Y[N] __attribute__ ((__aligned__(16)));
Widening summation can also be supported by type promotion and non-widening
summation (vect_unpack).
*/
unsigned int
__attribute__ ((noinline)) unsigned int
foo (int len) {
int i;
unsigned int result = 0;
......
......@@ -18,7 +18,7 @@ unsigned char Y[N] __attribute__ ((__aligned__(16)));
Alternatively, this test can be vectorized using vect_widen_mult_qi (or
vect_unpack and non-widening multplication: vect_unpack && vect_short_mult).
*/
unsigned short
__attribute__ ((noinline)) unsigned short
foo (int len) {
int i;
unsigned short result = 0;
......
......@@ -8,7 +8,7 @@ unsigned short udata_sh[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -8,7 +8,7 @@ unsigned char udata_ch[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -8,7 +8,7 @@ unsigned char udata_ch[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -8,7 +8,7 @@ signed short data_sh[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -8,7 +8,7 @@ signed char data_ch[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -8,7 +8,7 @@ signed char data_ch[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
......@@ -15,7 +15,7 @@ typedef struct {
unsigned int b;
} ii;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned short b;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -12,7 +12,7 @@ typedef struct {
unsigned short d;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned short b;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned int b;
} ii;
int
__attribute__ ((noinline)) int
main1 ()
{
unsigned short arr[N];
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned char b;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -17,7 +17,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -16,7 +16,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
int i;
......
......@@ -5,7 +5,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -15,7 +15,7 @@ typedef struct {
unsigned int b;
} ii;
int
__attribute__ ((noinline)) int
main1 (s *arr, ii *iarr)
{
s *ptr = arr;
......
......@@ -15,7 +15,7 @@ typedef struct {
unsigned int b;
} ii;
int
__attribute__ ((noinline)) int
main1 (s *arr, ii *iarr)
{
s *ptr = arr;
......
......@@ -12,7 +12,7 @@ typedef struct {
s buffer1[N], buffer2[N];
int
__attribute__ ((noinline)) int
main1 (s * __restrict__ pIn, s* __restrict__ pOut)
{
unsigned short i, x, y, d;
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned char b;
} s;
int
__attribute__ ((noinline)) int
main1 ()
{
s arr[N];
......
......@@ -16,7 +16,7 @@ unsigned short a[N];
unsigned short b[N];
unsigned short c[N];
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -6,7 +6,7 @@
#define N 16
int
__attribute__ ((noinline)) int
main1 (void)
{
int i;
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned short b;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
s *ptr = arr;
......
......@@ -12,7 +12,7 @@ typedef struct {
unsigned short d;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -12,7 +12,7 @@ typedef struct {
int d;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -16,7 +16,7 @@ typedef struct {
int h;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned int b;
} ii;
int
__attribute__ ((noinline)) int
main1 (unsigned short *arr, ii *iarr)
{
unsigned short *ptr = arr;
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned char b;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
s *ptr = arr;
......
......@@ -10,7 +10,7 @@ typedef struct {
unsigned char b;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
s *ptr = arr;
......
......@@ -17,7 +17,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -16,7 +16,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -16,7 +16,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -17,7 +17,7 @@ typedef struct {
unsigned char h;
} s;
int
__attribute__ ((noinline)) int
main1 (s *arr)
{
int i;
......
......@@ -8,7 +8,7 @@ int result[N] = {12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27}
int X[N] = {10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25};
int Y[N] = {};
void
__attribute__ ((noinline)) void
foo (int *in, int *out)
{
int i;
......
......@@ -10,7 +10,7 @@ int X[N] = {10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25};
int Y[N] = {};
int Z[N] = {};
void
__attribute__ ((noinline)) void
foo (int *in, int *out1, int *out2)
{
int i;
......
......@@ -18,7 +18,7 @@ struct S X[N] = {10, 10, 11, 11, 12, 12, 13, 13, 14, 14, 15, 15, 16,
23, 23, 24, 24, 25, 25};
struct S Y[N] = {};
void
__attribute__ ((noinline)) void
foo (struct S * in, struct S * out)
{
int i;
......
......@@ -7,7 +7,7 @@
int result[] = {10, 11, 15, 16, 20, 21, 25, 26, 30, 31, 35, 36, 40, 41, 45, 46, 50, 51};
int X[] = {10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 0, 0};
void
__attribute__ ((noinline)) void
foo (int *in, int *out)
{
int i;
......
......@@ -10,7 +10,7 @@ short Y[N] __attribute__ ((__aligned__(16)));
int result[N];
/* short->int widening-mult */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......
......@@ -10,7 +10,7 @@ signed char Y[N] __attribute__ ((__aligned__(16)));
short result[N];
/* char->short widening-mult */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......
......@@ -7,7 +7,7 @@
#define SUM 0
/* Require widening-mult or data-unpacking (for the type promotion). */
int
__attribute__ ((noinline)) int
main1 (short *in, int off, short scale, int n)
{
int i;
......
......@@ -10,7 +10,7 @@ unsigned short Y[N] __attribute__ ((__aligned__(16)));
unsigned int result[N];
/* short->int widening-mult */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......
......@@ -10,7 +10,7 @@ unsigned char Y[N] __attribute__ ((__aligned__(16)));
unsigned short result[N];
/* char->short widening-mult */
int
__attribute__ ((noinline)) int
foo1(int len) {
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 121
__attribute__ ((noinline))
void main1 (signed char x, signed char max_result, signed char min_result)
{
int i;
......
......@@ -6,6 +6,7 @@
#define N 16
#define DIFF 242
__attribute__ ((noinline))
void main1 (short x, short max_result, short min_result)
{
int i;
......
......@@ -19,7 +19,7 @@ signed char Y[N] __attribute__ ((__aligned__(16)));
Can also be vectorized as widening-mult + summation,
or with type-conversion support.
*/
short
__attribute__ ((noinline)) short
foo(int len) {
int i;
short result = 0;
......
......@@ -8,7 +8,7 @@ signed char data_ch[N] =
{ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28 };
#define SUM 210
int
__attribute__ ((noinline)) int
foo ()
{
int i;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment