intel/compiler: validate region restrictions for mixed float mode
authorIago Toral Quiroga <itoral@igalia.com>
Wed, 6 Feb 2019 08:13:22 +0000 (09:13 +0100)
committerJuan A. Suarez Romero <jasuarez@igalia.com>
Thu, 18 Apr 2019 11:22:46 +0000 (13:22 +0200)
commit8ed6d74c922e967732bb6f8b4e39bdcedd46e544
tree5668e68907b108619d8176f40506c77e2499345f
parent58d6417e591db3f440c4a1c06c9cfdfae2a06dfb
intel/compiler: validate region restrictions for mixed float mode

v2:
 - Adapted unit tests to make them consistent with the changes done
   to the validation of half-float conversions.

v3 (Curro):
- Check all the accummulators
- Constify declarations
- Do not check src1 type in single-source instructions.
- Check for all instructions that read accumulator (either implicitly or
  explicitly)
- Check restrictions in src1 too.
- Merge conditional block
- Add invalid test case.

v4 (Curro):
- Assert on 3-src instructions, as they are not validated.
- Get rid of types_are_mixed_float(), as we know instruction is mixed
  float at that point.
- Remove conditions from not verified case.
- Fix brackets on conditional.

Reviewed-by: Francisco Jerez <currojerez@riseup.net>
src/intel/compiler/brw_eu_validate.c
src/intel/compiler/test_eu_validate.cpp