Lines Matching defs:make_field
51 static RegisterFlags::Field make_field(unsigned start, unsigned end) {
55 static RegisterFlags::Field make_field(unsigned bit) {
61 ASSERT_FALSE(make_field(0, 0).Overlaps(make_field(1)));
62 ASSERT_TRUE(make_field(1, 1).Overlaps(make_field(1)));
63 ASSERT_FALSE(make_field(1, 1).Overlaps(make_field(3)));
65 ASSERT_TRUE(make_field(0, 1).Overlaps(make_field(1, 2)));
66 ASSERT_TRUE(make_field(1, 2).Overlaps(make_field(0, 1)));
67 ASSERT_FALSE(make_field(0, 1).Overlaps(make_field(2, 3)));
68 ASSERT_FALSE(make_field(2, 3).Overlaps(make_field(0, 1)));
70 ASSERT_FALSE(make_field(1, 5).Overlaps(make_field(10, 20)));
71 ASSERT_FALSE(make_field(15, 30).Overlaps(make_field(7, 12)));
79 ASSERT_EQ(make_field(1, 1).PaddingDistance(make_field(0)), 0ULL);
81 ASSERT_EQ(make_field(2, 2).PaddingDistance(make_field(0)), 1ULL);
83 ASSERT_EQ(make_field(1, 2).PaddingDistance(make_field(0)), 0ULL);
85 ASSERT_EQ(make_field(31, 31).PaddingDistance(make_field(0)), 30ULL);
102 std::vector<RegisterFlags::Field>{make_field(16, 31), make_field(0, 15)};
106 test_padding({make_field(17, 31), make_field(0, 15)},
107 {make_field(17, 31), make_field(16), make_field(0, 15)});
109 test_padding({make_field(17, 31), make_field(0, 14)},
110 {make_field(17, 31), make_field(15, 16), make_field(0, 14)});
113 test_padding({make_field(0, 30)}, {make_field(31), make_field(0, 30)});
115 test_padding({make_field(0, 15)}, {make_field(16, 31), make_field(0, 15)});
118 test_padding({make_field(1, 31)}, {make_field(1, 31), make_field(0)});
120 test_padding({make_field(2, 31)}, {make_field(2, 31), make_field(0, 1)});
124 test_padding({make_field(24, 27), make_field(20, 21), make_field(8, 11)},
125 {make_field(28, 31), make_field(24, 27), make_field(22, 23),
126 make_field(20, 21), make_field(12, 19), make_field(8, 11),
127 make_field(0, 7)});
132 RegisterFlags rf("", 4, {make_field(0, 31)});
136 RegisterFlags rf2("", 4, {make_field(16, 31), make_field(0, 15)});
141 "", 4, {make_field(31), make_field(30), make_field(29), make_field(28)});
148 RegisterFlags anon_field("", 4, {make_field(0, 31)});
154 RegisterFlags anon_with_pad("", 4, {make_field(16, 31)});
174 RegisterFlags single_bit("", 4, {make_field(31)});