Lines Matching refs:fld
1511 #define __expand_field_sign_unsigned(id, fld, val) \ argument
1512 ((u64)SYS_FIELD_VALUE(id, fld, val))
1514 #define __expand_field_sign_signed(id, fld, val) \ argument
1516 u64 __val = SYS_FIELD_VALUE(id, fld, val); \
1517 sign_extend64(__val, id##_##fld##_WIDTH - 1); \
1520 #define get_idreg_field_unsigned(kvm, id, fld) \ argument
1523 FIELD_GET(id##_##fld##_MASK, __val); \
1526 #define get_idreg_field_signed(kvm, id, fld) \ argument
1528 u64 __val = get_idreg_field_unsigned(kvm, id, fld); \
1529 sign_extend64(__val, id##_##fld##_WIDTH - 1); \
1532 #define get_idreg_field_enum(kvm, id, fld) \ argument
1533 get_idreg_field_unsigned(kvm, id, fld)
1535 #define kvm_cmp_feat_signed(kvm, id, fld, op, limit) \ argument
1536 (get_idreg_field_signed((kvm), id, fld) op __expand_field_sign_signed(id, fld, limit))
1538 #define kvm_cmp_feat_unsigned(kvm, id, fld, op, limit) \ argument
1539 (get_idreg_field_unsigned((kvm), id, fld) op __expand_field_sign_unsigned(id, fld, limit))
1541 #define kvm_cmp_feat(kvm, id, fld, op, limit) \ argument
1542 (id##_##fld##_SIGNED ? \
1543 kvm_cmp_feat_signed(kvm, id, fld, op, limit) : \
1544 kvm_cmp_feat_unsigned(kvm, id, fld, op, limit))
1546 #define __kvm_has_feat(kvm, id, fld, limit) \ argument
1547 kvm_cmp_feat(kvm, id, fld, >=, limit)
1551 #define __kvm_has_feat_enum(kvm, id, fld, val) \ argument
1552 kvm_cmp_feat_unsigned(kvm, id, fld, ==, val)
1556 #define kvm_has_feat_range(kvm, id, fld, min, max) \ argument
1557 (kvm_cmp_feat(kvm, id, fld, >=, min) && \
1558 kvm_cmp_feat(kvm, id, fld, <=, max))