v1.2.4.17
What's Changed
Breaking Changes 🛠
- Remove ReferenceMap from majority of midend passes by @asl in #4936
- Remove reference map from another set of midend passes by @asl in #4939
P4 Specification Implementation
- Support for [lsb+:width] slices by @ChrisDodd in #4917
Changes to the Compiler Core
- Fix parser symbolic interpreter to evaluate StringLiteral by @jhavrane in #4937
- Add Vector::dbprint by @vlstill in #4943
- extend type checking to mark extern function call that returns enum a… by @hanw in #4941
- Reorder subdirectory additions in CMakeLists.txt by @hanw in #4938
- Add LOGGING_FEATURE macro by @vlstill in #4953
- Add utilities for running modifications inside nested IR nodes by @vlstill in #4940
- set PathExpression type in ExpandLookahead by @grg in #4959
- Do not print confusing warning when a parser state contains an assignment to an l-value slice by @kfcripps in #4948
- Minor code/comments cleanup in
SimplifyDefUse
by @kfcripps in #4963 - wrap <64bit types properly in loop unrolling by @ChrisDodd in #4967
- Fix warning about delete not matching new by @ChrisDodd in #4989
Changes to the BMv2 Back Ends
Changes to the TC Back End
- Change tc template define by @vbnogueira in #4949
- Make number of masks default to 1 for exact tables by @vbnogueira in #4954
- Handle pna_main_parser_input_metadata_t fields in the tc backend's parser by @vbnogueira in #4955
- P4TC - Implementation of Hash Extern by @komaljai in #4980
Changes to the DPDK Back End
Changes to the P4Tools Back End
- [P4Testgen] Move newline stripping from trace to TestFramework by @vlstill in #4946
- [P4Testgen] Run typechecking after front and mid end. by @fruffy in #4834
- Build Z3 from source instead of downloading precompiled binaries. by @fruffy in #4697
Other Changes
- Ignore brew dependency installation to fix breakages on MacOS CI. by @fruffy in #4950
- Remove ReferenceMap from top-level frontend passes by @asl in #4947
- Add instructions on Github CI tests, including triggering optional ones by @jafingerhut in #4956
- Fix a recently introduced typo by @jafingerhut in #4960
- Fix Fedora CI build. by @fruffy in #4957
- Add a couple of missing ENABLE_* flags to README by @jafingerhut in #4968
- bump up grpcio version to fix mac m1 ci issue by @hanw in #4976
- Require the driver binary as a test input. by @fruffy in #4977
- [P4fmt]: attaching comments to IR Nodes by @snapdgn in #4845
- Contributing Intel Tofino compiler backend to p4c by @hanw in #4964
- Remove Tofino-specific Python packages from requirements.txt by @fruffy in #4984
- Fix Fedora build and fix CMake warnings on versions greater than CMake 3.24. by @fruffy in #4986
- Fix case of default CMake build mode. by @fruffy in #4993
- Automated Release v1.2.4.17 by @github-actions in #4990
Full Changelog: v1.2.4.16...v1.2.4.17