[P4_Symbolic] Overload GetFieldBitwidth
to accept separate header and field names as parameters.
#938
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Keyword Check:
~/sonic-buildimage/src/sonic-p4rt/sonic-pins$ ~/tools/keyword_checks.sh .
Keyword check Passed.
Build Result:
/sonic/src/sonic-p4rt/sonic-pins$ bazel build $BAZEL_BUILD_OPTS ...
INFO: Analyzed 669 targets (0 packages loaded, 0 targets configured).
INFO: Found 669 targets...
INFO: From Compiling p4_symbolic/symbolic/symbolic.cc:
In file included from ./p4_symbolic/z3_util.h:18,
from ./p4_symbolic/symbolic/symbolic.h:31,
from p4_symbolic/symbolic/symbolic.cc:15:
./p4_pdpi/string_encodings/bit_string.h: In member function 'void pdpi::BitString::AppendBytes(absl::lts_20230802::string_view)':
./p4_pdpi/string_encodings/bit_string.h:55:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::basic_string_view::size_type' {aka 'long unsigned int'} [-Wsign-compare]
55 | for (int i = 0; i < bytes.size(); i++) {
| ~~^~~~~~~~~~~~~~
./p4_pdpi/string_encodings/bit_string.h: In instantiation of 'void pdpi::BitString::AppendBits(const std::bitset<_Nb>&) [with long unsigned int num_bits = 8]':
./p4_pdpi/string_encodings/bit_string.h:41:50: required from here
./p4_pdpi/string_encodings/bit_string.h:49:23: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
49 | for (int i = 0; i < num_bits; i++) {
| ~~^~~~~~~~~~
INFO: From Compiling p4_symbolic/symbolic/table.cc:
p4_symbolic/symbolic/table.cc: In function 'std::vector<std::pair<int, p4_symbolic::ir::TableEntry> > p4_symbolic::symbolic::table::{anonymous}::SortEntries(const p4_symbolic::ir::Table&, const std::vector<p4_symbolic::ir::TableEntry>&)':
p4_symbolic/symbolic/table.cc:135:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<p4_symbolic::ir::TableEntry>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
135 | for (int i = 0; i < entries.size(); i++) {
| ~~^~~~~~~~~~~~~~~~
INFO: From Compiling p4_symbolic/symbolic/parser.cc [for host]:
In file included from ./p4_symbolic/z3_util.h:18,
from ./p4_symbolic/symbolic/symbolic.h:31,
from p4_symbolic/symbolic/parser.cc:28:
./p4_pdpi/string_encodings/bit_string.h: In member function 'void pdpi::BitString::AppendBytes(absl::lts_20230802::string_view)':
./p4_pdpi/string_encodings/bit_string.h:55:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::basic_string_view::size_type' {aka 'long unsigned int'} [-Wsign-compare]
55 | for (int i = 0; i < bytes.size(); i++) {
| ~~^~~~~~~~~~~~~~
./p4_pdpi/string_encodings/bit_string.h: In instantiation of 'void pdpi::BitString::AppendBits(const std::bitset<_Nb>&) [with long unsigned int num_bits = 8]':
./p4_pdpi/string_encodings/bit_string.h:41:50: required from here
./p4_pdpi/string_encodings/bit_string.h:49:23: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
| ~~^~~~~~~~~~
INFO: From Compiling p4_symbolic/deparser_test.cc:
In file included from ./p4_symbolic/z3_util.h:18,
from ./p4_symbolic/symbolic/symbolic.h:31,
from ./p4_symbolic/deparser.h:21,
from p4_symbolic/deparser_test.cc:15:
./p4_pdpi/string_encodings/bit_string.h: In member function 'void pdpi::BitString::AppendBytes(absl::lts_20230802::string_view)':
./p4_pdpi/string_encodings/bit_string.h:55:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::basic_string_view::size_type' {aka 'long unsigned int'} [-Wsign-compare]
55 | for (int i = 0; i < bytes.size(); i++) {
| ~~^~~~~~~~~~~~~~
./p4_pdpi/string_encodings/bit_string.h: In instantiation of 'void pdpi::BitString::AppendBits(const std::bitset<_Nb>&) [with long unsigned int num_bits = 8]':
./p4_pdpi/string_encodings/bit_string.h:41:50: required from here
./p4_pdpi/string_encodings/bit_string.h:49:23: warning: comparison of integer expressions of different signedness: 'int' and 'long unsigned int' [-Wsign-compare]
49 | for (int i = 0; i < num_bits; i++) {
| ~~^~~~~~~~~~
INFO: Elapsed time: 19.781s, Critical Path: 8.79s
INFO: 33 processes: 2 internal, 31 linux-sandbox.
INFO: Build completed successfully, 33 total actions
Test Result:
/sonic/src/sonic-p4rt/sonic-pins$ bazel test $BAZEL_BUILD_OPTS --cache_test_results=no ...
INFO: Analyzed 669 targets (0 packages loaded, 0 targets configured).
INFO: Found 453 targets and 216 test targets...
INFO: Elapsed time: 232.137s, Critical Path: 113.32s
INFO: 270 processes: 325 linux-sandbox, 18 local.
INFO: Build completed successfully, 270 total actions
//dvaas:port_id_map_test PASSED in 0.8s
//dvaas:test_run_validation_golden_test PASSED in 0.1s
//dvaas:test_run_validation_test PASSED in 0.6s
//dvaas:test_run_validation_test_runner PASSED in 0.0s
//dvaas:test_vector_stats_diff_test PASSED in 0.0s
//dvaas:test_vector_stats_test PASSED in 0.1s
//dvaas:test_vector_test PASSED in 0.6s
//dvaas:user_provided_packet_test_vector_diff_test PASSED in 0.1s
//dvaas:user_provided_packet_test_vector_test PASSED in 0.1s
//gutil:collections_test PASSED in 0.5s
//gutil:io_test PASSED in 0.6s
//gutil:proto_matchers_test PASSED in 0.6s
//p4rt_app/tests:state_verification_test PASSED in 3.4s
//p4rt_app/tests:vrf_table_test PASSED in 2.6s
//p4rt_app/tests/lib:app_db_entry_builder_test PASSED in 0.0s
//p4rt_app/utils:event_data_tracker_test PASSED in 0.0s
//p4rt_app/utils:table_utility_test PASSED in 0.7s
//sai_p4/instantiations/google:clos_stage_test PASSED in 0.5s
//sai_p4/instantiations/google:fabric_border_router_p4info_up_to_date_test PASSED in 0.1s
//sai_p4/instantiations/google:middleblock_p4info_up_to_date_test PASSED in 0.0s
//sai_p4/instantiations/google:sai_nonstandard_platforms_build_test PASSED in 0.1s
//sai_p4/instantiations/google:sai_nonstandard_platforms_cc_test PASSED in 0.7s
//sai_p4/instantiations/google:sai_p4info_fetcher_test PASSED in 0.7s
//sai_p4/instantiations/google:sai_p4info_test PASSED in 1.1s
//sai_p4/instantiations/google:sai_pd_proto_test PASSED in 0.1s
//sai_p4/instantiations/google:sai_pd_util_test PASSED in 0.6s
//sai_p4/instantiations/google:tor_p4info_up_to_date_test PASSED in 0.0s
//sai_p4/instantiations/google:union_p4info_up_to_date_test PASSED in 0.1s
//sai_p4/instantiations/google:wbb_p4info_up_to_date_test PASSED in 0.0s
//sai_p4/instantiations/google/test_tools:table_entry_generator_helper_test PASSED in 1.5s
//sai_p4/instantiations/google/test_tools:test_entries_test PASSED in 0.9s
//sai_p4/instantiations/google/tests:p4_fuzzer_integration_test PASSED in 3.5s
//sai_p4/tools:p4info_tools_test PASSED in 0.6s
//sai_p4/tools:packetio_tools_test PASSED in 0.8s
//tests:thinkit_gnmi_interface_util_tests PASSED in 1.1s
//tests/lib:p4info_helper_test PASSED in 1.0s
//tests/lib:p4rt_fixed_table_programming_helper_test PASSED in 0.7s
//tests/lib:packet_generator_test PASSED in 26.7s
//tests/lib:switch_test_setup_helpers_golden_test PASSED in 0.1s
//tests/lib:switch_test_setup_helpers_golden_test_runner PASSED in 0.1s
//tests/qos:gnmi_parsers_test PASSED in 0.0s
//tests/qos:gnmi_parsers_test_runner PASSED in 0.0s
//tests/sflow:sflow_util_test PASSED in 7.0s
//thinkit:bazel_test_environment_test PASSED in 0.6s
//thinkit:generic_testbed_test PASSED in 1.0s
//thinkit:mock_control_device_test PASSED in 0.6s
//thinkit:mock_generic_testbed_test PASSED in 0.7s
//thinkit:mock_mirror_testbed_test PASSED in 0.7s
//thinkit:mock_ssh_client_test PASSED in 0.0s
//thinkit:mock_switch_test PASSED in 0.8s
//thinkit:mock_test_environment_test PASSED in 0.1s
//thinkit:switch_test PASSED in 0.7s
//sai_p4/instantiations/google/tests:p4_constraints_integration_test PASSED in 1.0s
Stats over 5 runs: max = 1.0s, min = 0.7s, avg = 0.9s, dev = 0.1s
//sai_p4/instantiations/google/test_tools:table_entry_generator_test PASSED in 45.7s
Stats over 50 runs: max = 45.7s, min = 0.8s, avg = 4.6s, dev = 11.8s
Executed 216 out of 216 tests: 216 tests pass.
INFO: Build completed successfully, 270 total actions