"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/compiler/nir/nir_opt_algebraic.py" between
mesa-20.0.0-rc2.tar.xz and mesa-20.0.0-rc3.tar.xz

About: Mesa is an open-source implementation of the OpenGL specification - a system for rendering interactive 3D graphics (main library code). Release candidate.

nir_opt_algebraic.py  (mesa-20.0.0-rc2.tar.xz):nir_opt_algebraic.py  (mesa-20.0.0-rc3.tar.xz)
skipping to change at line 1282 skipping to change at line 1282
optimizations += [ optimizations += [
(('iadd_sat@' + str(bit_size), a, b), (('iadd_sat@' + str(bit_size), a, b),
('bcsel', ('ige', b, 1), ('bcsel', ('ilt', ('iadd', a, b), a), intmax, (' iadd', a, b)), ('bcsel', ('ige', b, 1), ('bcsel', ('ilt', ('iadd', a, b), a), intmax, (' iadd', a, b)),
('bcsel', ('ilt', a, ('iadd', a, b)), intmin, (' iadd', a, b))), 'options->lower_add_sat'), ('bcsel', ('ilt', a, ('iadd', a, b)), intmin, (' iadd', a, b))), 'options->lower_add_sat'),
(('isub_sat@' + str(bit_size), a, b), (('isub_sat@' + str(bit_size), a, b),
('bcsel', ('ilt', b, 0), ('bcsel', ('ilt', ('isub', a, b), a), intmax, (' isub', a, b)), ('bcsel', ('ilt', b, 0), ('bcsel', ('ilt', ('isub', a, b), a), intmax, (' isub', a, b)),
('bcsel', ('ilt', a, ('isub', a, b)), intmin, (' isub', a, b))), 'options->lower_add_sat'), ('bcsel', ('ilt', a, ('isub', a, b)), intmin, (' isub', a, b))), 'options->lower_add_sat'),
] ]
invert = OrderedDict([('feq', 'fne'), ('fne', 'feq'), ('fge', 'flt'), ('flt', 'f ge')]) invert = OrderedDict([('feq', 'fne'), ('fne', 'feq')])
for left, right in itertools.combinations_with_replacement(invert.keys(), 2): for left, right in itertools.combinations_with_replacement(invert.keys(), 2):
optimizations.append((('inot', ('ior(is_used_once)', (left, a, b), (right, c, d))), optimizations.append((('inot', ('ior(is_used_once)', (left, a, b), (right, c, d))),
('iand', (invert[left], a, b), (invert[right], c, d)))) ('iand', (invert[left], a, b), (invert[right], c, d))))
optimizations.append((('inot', ('iand(is_used_once)', (left, a, b), (right, c , d))), optimizations.append((('inot', ('iand(is_used_once)', (left, a, b), (right, c , d))),
('ior', (invert[left], a, b), (invert[right], c, d)))) ('ior', (invert[left], a, b), (invert[right], c, d))))
# Optimize x2bN(b2x(x)) -> x # Optimize x2bN(b2x(x)) -> x
for size in type_sizes('bool'): for size in type_sizes('bool'):
aN = 'a@' + str(size) aN = 'a@' + str(size)
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)