# Copyright 2017 syzkaller project authors. All rights reserved. # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. meta automatic meta noextract meta arches["foo", "bar", "386"] incdir strflags0 = "foo", strflags1 strflags1 = "bar" expressions { f0 int8 (if[value[X] & Y]) f1 int8 (if[X & Y == Z]) f2 int8 (if[X & Y & Z == value[X] & A]) f3 int8 (if[X & (A == B) & Z != C]) f5 int8 (if[value[X] == A || value[X] == B]) } intflags = 1, 2, 3, 4 condFields { mask int8 flags flags[intflags, int8] # Simple expressions work. f0 int16 (if[val[mask] == SOME_CONST]) # Conditions and other attributes work together. f1 int16 (out, if[val[mask] == SOME_CONST]) # Test some more complex expressions. f2 int16 (out, if[val[mask] & SOME_CONST == OTHER_CONST]) f3 int16 (out, if[val[mask] & SOME_CONST & OTHER_CONST == val[mask] & CONST_X]) f4 int16 (out, if[val[flags] & SOME_CONST]) f5 int16 (out, if[val[flags] == SOME_CONST || val[flags] == OTHER_CONST]) f6 int16 (out, if[val[flags] == SOME_CONST || val[flags] & OTHER_CONST]) }