Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Tags: kheradmandG/p4c

Tags

v1.2.4.0

Toggle v1.2.4.0's commit message
Add Bazel build rules for P4TestGen.

v1.2.3.0

Toggle v1.2.3.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Release v1.2.3.0 (p4lang#3466)

Changelog:
- Add a compiler pass that adds missing IDs to control plane objects. (3455) [fruffy]
- Forbid packages, controls, etc as tuple fields (3461) [Mihai Budiu]
- Do not allow constructor calls of externs with abstract methods (3460) [Mihai Budiu]
- Fix include headers for lib/stringify.h (3457) [Mihai Budiu]
- Use Type_Dontcare for _ expressions in table entries (3444) [Mihai Budiu]
- pft-ebpf tests: update psabpf to fix tests (3456) [Jan Palimąka]
- Fix Missing metadata for temporary variables added for Mask operation (3452) [Usha Gupta]
- DPDK Backend: Add support for tdi.json (3440) [Usha Gupta]
- P4C-DPDK - Incorrect constant value when there is a substract operation involved with a constant (3411) [github-sajan]
- Fixed build with older bison on Ubuntu 18 (3454) [Dávid Bolvanský]
- Add bazel support for p4c-dpdk compiler (3441) [Zhang Liu]
- initial commit (3447) [VolodymyrPeschanenkoIntel]
- Values with type int are legal constants (3446) [Vojtěch Havel]
- Fixed usage of yyFlexLexer with multiple parsers (3445) [Dávid Bolvanský]
- Prevent crash caused by incorrect error message (3443) [Mihai Budiu]
- ordered_set: operator<: Fix for a case of strict inclusion. (3431) [DoctorNoobingstoneIPresume]
- DPDK Backend: Avoid compiler crash by handling possible types of length argument in packet extract for header containing varbit field (3439) [Usha Gupta]
- DPDK Backend: Emit name information for externs in context json (3433) [Usha Gupta]
- [dpdk] shorten label names and header instance type (3436) [Kamlesh Kumar]
- remove debug info (3438) [VolodymyrPeschanenkoIntel]
- Added new P4C option (3425) [OleksandrLetychevskyiIntel]
- Avoid crash in ebpf backend by checking expected IR node kinds (3427) [Mihai Budiu]
- remove unused include (3428) [Vojtěch Havel]
- Do not remove externs which are defined not in system files. (3424) [VolodymyrPeschanenkoIntel]
- Implement Copy Elimination for dpdk backend (3406) [Kamlesh Kumar]
- save annotations after parser unroll (3422) [VolodymyrPeschanenkoIntel]
- Handle constant folding for tuple/list constants (3421) [Mihai Budiu]
- loop unrolling: Use type of original expression (3420) [Mihai Budiu]

Co-authored-by: rst0git <[email protected]>

v1.2.2.3

Toggle v1.2.2.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Release v1.2.2.3 (p4lang#3418)

Changelog:
- Only crash if the error count exceeds the maximum (3413) [Andrew Kvapil]
- Use a helper to to define the cpp toolchain type (3416) [John Cater]
- Fix incorrect overload resolution for specialized (package) types (3412) [Mihai Budiu]
- Always prepend local gtest include paths (3414) [Anton Korobeynikov]
- Add support of path expressions for a header stack inside parserUnroll (3405) [VolodymyrPeschanenkoIntel]
- Values with type int are legal constants (3408) [Mihai Budiu]
- collects decls from parser and control block (3392) [Kamlesh Kumar]
- Update BUILD.bazel to remove constat patterns from glob (3397) [Zhang Liu]
- Remove apply() calls to redundant parsers (3356) [Brian Leibig]
- psabpf-ctl: update action-selector CLI - rename commands (3404) [Jan Palimąka]
- Fix incorrect copy propagation into table match keys (3399) [Vojtěch Havel]
- Solving problems with HeaderUnion (3342) [OleksandrLetychevskyiIntel]
- Update rules that require a cpp toolchain to use a helper function that defines the toolchain type. (3401) [John Cater]
- Improve the way we wait for commands in driver (3398) [Vladimír Štill]
- Fixing parserUnroll bug for sequential next operator usage (3193) [VolodymyrPeschanenkoIntel]
- Fix missing key initialization when header/metadata fields used as table keys are copied in new metadata fields (3395) [Usha Gupta]
- actionSynthesis: add original source info to synthesized actions (3396) [Matej Vido]
- Use width_bits() instead of size for constantFolding. (3400) [fruffy]
- BUILD_USE_COLOR=OFF disables colors for the C++ compiler (3389) [Dávid Bolvanský]
- Make bitvec helpers available as global, don't polute top-level namespace (3393) [Vladimír Štill]
- Bring commonly used builtin options under lib directory (3381) [Kamlesh Kumar]
- Update reference outputs (3388) [Usha Gupta]
- Dpdk Backend: Enable header stack dynamic index elimination (3375) [Usha Gupta]
- Add metadata fields uses as Member Expression (3387) [Kamlesh Kumar]
- Enable Automated Releases (3386) [Radostin Stoyanov]
- DPDK Backend: Fix action name used in learn instruction, minor fix in context json (3385) [Usha Gupta]
- Fixing bug in HSIndexSimplifier path (3382) [VolodymyrPeschanenkoIntel]
- PSA-eBPF PTF tests: update psabpf to the latest version (3383) [Jan Palimąka]
- Dpdk backend: Add target_name field for tables to context json.  (3380) [Usha Gupta]
- Fixed comparison between two Type_Bits (3377) [Michal Kekely]
- accept PSA_MeterColor_t in action parameter (3365) [Kamlesh Kumar]
- Type unification should always use the canonical type (3370) [Mihai Budiu]
- Dpdk backend: Minor changes in context json and learner table timeout values. Supercedes PR 3369 (3372) [Usha Gupta]
- P4C-DPDK : Add support for Hash extern (3368) [github-sajan]
- Add types for tables keys after switchElimination (3064) [VolodymyrPeschanenkoIntel]
- Do not allow variables with type Type_Parser/Control (3361) [Mihai Budiu]
- Remove unused variables in psa/ebpf backend (3362) [Mihai Budiu]
- String utility functions (3366) [Mihai Budiu]
- crash.cpp: Register names fixed for building under Cygwin. (3296) [DoctorNoobingstoneIPresume]
- Added nullptr check into graphs backend (3367) [Michal Kekely]
- Add old parser state in loopsUnroll if ExpressionEvaluator returns a error (3150) [VolodymyrPeschanenkoIntel]
- Use 0 as default PSA_PORT_RECIRCULATE value (3360) [Mateusz Kossakowski]
- Add support for ternary const entries (3347) [Mateusz Kossakowski]
- Improve error message when select types do not match (3352) [Mihai Budiu]
- Do not crash if constant width is 0 (3358) [Mihai Budiu]
- Allow value sets as labels when select() is done on a constant (3353) [Mihai Budiu]
- Allow unification between serenum and underlying type (3341) [Mihai Budiu]
- Allow shifts with serenums on the RHS (3355) [Mihai Budiu]
- Unification of generic types can reduce to unification of Type_Name (3354) [Mihai Budiu]
- Fixed start state renaming for p4-14 translation using @packet_entry (3348) [Michal Kekely]
- Validate value_set element types (3351) [Mihai Budiu]
- Do not generate TC Egress program if PSA Egress pipeline is empty (3349) [Tomasz Osiński]
- Improve error message when validating select expressions (3340) [Mihai Budiu]
- Require a start state in parsers (3339) [Mihai Budiu]
- Use psabpf-ctl register command in PTF tests (3337) [Mateusz Kossakowski]
- Dpdk:  Fix missing initialization for table properties for add_on_miss tables in context json (3334) [Usha Gupta]
- Do not specialize functions when arguments are type variables (3328) [Mihai Budiu]
- Add generic structs to P4Runtime digest example (3332) [Antonin Bas]
- Fix control-plane generation for headers containing structs (3331) [Mihai Budiu]
- Check that parameter default values are compile-time known (3330) [Mihai Budiu]
- Fix handling of keys without name annotation in graphs (3327) [Vladimír Štill]
- [dpdk]  Fix calculation of direction from input port (3326) [Kamlesh Kumar]
- DPDK Backend: Connection tracking support (3290) [Usha Gupta]
- Update PSA-eBPF documentation (3320) [Tomasz Osiński]
- Expand 'emit' calls in the ebpf backend (3323) [Mihai Budiu]
- Fix warnings generated by XDP helper program (3322) [Tomasz Osiński]
- Fixes for Graph generation for switch(t.apply().action_run) (3314) [Michal Kekely]
- Allow shifts with constant signed positive amounts (3303) [Mihai Budiu]
- Correctly handle don't care named arguments  (3278) [Mihai Budiu]
- Avoid dereferencing nullptr in GetStackItemRef::baseRef (3315) [Vladimír Štill]
- Not all returns in parsers are disallowed (3309) [Mihai Budiu]
- Do not allow structure have specialized parsers as type arguments (3310) [Mihai Budiu]
- Fixing bug for concat elimination in SimpleSwitch (3300) [VolodymyrPeschanenkoIntel]
- Require generic return types to be specialized (3302) [Mihai Budiu]
- p4test does not support switch statements in actions (3301) [Mihai Budiu]
- Forbid instantiations in functions or methods (3279) [Mihai Budiu]
- Forbid methods to return int or string (3280) [Mihai Budiu]
- Emit table apply for switch expression with action_run (3284) [Usha Gupta]
- Test for isValid as a header field (3275) [Mihai Budiu]
- Improvement of p4c-graphs backend (3268) [Timotej Ponek]
- Add support for LLD linker, cmake options for LLD and Gold (3263) [Vladimír Štill]
- Update used psabpf library for PTF tests (PSA/eBPF) (3261) [Jan Palimąka]
- Preserve build failure semantics. (3270) [fruffy]
- [dpdk] Eliminate header copy (3257) [Kamlesh Kumar]
- DPDK Backend: PNA Pass metadata support (3245) [Usha Gupta]
- Add UPF sample program for PSA/eBPF backend (3267) [Tomasz Osiński]
- Add BNG sample program for PSA/eBPF backend (3266) [Tomasz Osiński]
- Use ccache with Github actions (3073) [fruffy]
- Add cmake option to force-enable colors in build (3269) [Vladimír Štill]
- Do not crash on illegal uses of 'this' (3265) [Mihai Budiu]
- Allow specialized types for direct control/parser invocations (3260) [Mihai Budiu]
- Add support for ternary match kind to eBPF backend (3256) [Tomasz Osiński]
- Stricter type checking for built-in methods (3259) [Mihai Budiu]
- Add L2L3-ACL sample program for PSA/eBPF backend (3255) [Tomasz Osiński]
- Improve padding calculation in eBPF parser (3254) [Jan Palimąka]
- UBPF backend header files were not cpplinted (3252) [Mihai Budiu]
- Fix incorrect C code generation for ebpf control plane (3253) [Jan Palimąka]
- Add support for Random extern to PSA/eBPF backend (3251) [Tomasz Osiński]
- Fix support for verify() and error type to fully support verify() in PSA/eBPF backend (3250) [Jan Palimąka]
- Implement DirectMeter extern for eBPF backend (3243) [Mateusz Kossakowski]
- p4c: Handle spaces in file name (3249) [Radostin Stoyanov]
- Fix a typo in README (3248) [Jan Ziak]

Co-authored-by: p4lang <[email protected]>

v1.2.2.2

Toggle v1.2.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Release 1.2.2.2 (p4lang#3247)

Changelog:

- Extend eBPF kernel target with support for additional BPF helpers and more types of BPF maps (3119)
- loop_revisit method for dealing with recursive loops in the IR (3106)
- Added nullptr checks for l/rtype (3138)
- DPDK: Implementation for non byte aligned metadata and header fields (3114)
- Fix expansion of signed ranges to masks (3212)
- Forbid egress pipeline in dpdk by default (3104)
- Point to PSA/eBPF implementation in main README (3244)
- Remove unnecessary check in conversion of log_msg to a JSON (3067)
- Represent unary plus in the IR (3157)
- Use 0 as action ID for NoAction and refactor eBPF table implementation (3129)
- Add PTF test infra for eBPF backend (3158)
- Add support for ActionSelector extern to PSA/eBPF backend (3216)
- Add support for Checksum extern and CRC16/32 algorithms to eBPF backend (3167)
- Add support for parser value_set to eBPF backend (3235)
- DPDK Backend: Insert table keys generated by compiler closer to the standard and user metadata (3160)
- Fix cpplint errors for dpdk sources (3111)
- P4C-DPDK: Emit error when struct fields >64-bit is present in the P4 (3217)
- Replace pna direction with register read (3224)
- Solving problems with Header Union verify function (reopened) (3214)
- Add --xdp2tc compiler flag for eBPF backend (3187)
- DPDK: Add support for "mirror_packet" PNA extern (3128)
- Eliminate typedefs in bmv2-ss backend (3123)
- Fix off-by-one bug in source file position calculation (3124)
- Add support for Counter extern to PSA/eBPF backend (3165)
- Add support for Register extern to PSA/eBPF backend (3202)
- Comparisons of list expressions, structure-valued expressions, tuples and structs (3122)
- Disable 'unused' warning for some psa.p4 externs (3147)
- [dpdk] Shorten the Identifer name, including dots(.) in Member expression (3175)
- Improve error message for count() in dpdk (3101)
- improving the driver re: the checking of input pathnames, improving error messages, trying to prevent misleading error - ssages. (3218)
- Insert type specializations before functions (3207)
- Moved FindRecirculated from .cpp to .h (3088)
- Add Digest extern to PSA/eBPF backend (3164)
- DPDK: Fix core dump while generating bfrt json for PNA programs with action selector (3115)
- Improve efficiency of range translation to mask  (3133)
- PSA-eBPF: Add missing header name substitution in deparser (3162)
- Split psa_switch.h into two files (3144)
- Add debug messages for generated eBPF programs (3097)
- Compile the P4 compiler tools in host configuration (3148)
- Do not allow casts to struct types (3234)
- Fix Context json to emit target_action_name and NoAction (3213)
- Fixed underflow during row-access in the SymBitMatrix (3143) (3169)
- from1.0: fix register type signess (3117)
- Removed execute permission bits from all 3 of the P4 files that had them.
- typeChecker: make error message less confusing (3152)
- Enable generation of pointer variables by eBPF codeGen (3131)
- Fixed bitvec.h (3239)
- P4C-DPDK - Support Non-zero arguments for default action (3206)
- Treat match_kind as a regular type (3099)
- Add support for Hash extern to eBPF backend (3215)
- Implement Meter extern for eBPF backend (3231)
- Keep track of source position for p4-14 switch statement labels (3141)
- Print the current node type name when checkedTo fails (3116)
- Remove incorrect test for recursion (3199)
- Strength reduction should not remove some casts (3226)
- Add support for InternetChecksum extern to eBPF backend (3194)
- Emit semicolon after method call (3093)
- Flatten local struct decl in dpdk (3108)
- Handle bfrt Info for new type (3103)
- Add correct and error test cases for structure-values expressions (3100)
- Allow casts int to int (3220)
- dpdk: Eliminate unused metadata fields (3096)
- Implement PSA for eBPF backend (3139)
- Improve error messages during type checking (3182)
- Struct expressions can be ConstantExpressions (3125)
- adding tests re the driver (1) missing error messages and (2) giving misleading error messages (3198)
- Add support for ActionProfile extern to PSA/eBPF backend (3177)
- Add support for DirectCounter extern to PSA/eBPF backend (3195)
- Implement EBPF deparser (3136)
- test: Update install_fedora_deps.sh (3190)
- Type of a unary expression is not always the same as the input type (3135)
- Allow P4 filenames containing spaces (3242)
- Constant fold casts of serializble enums (3181)
- DPDK Backend: Move learn instructions constant argument to metadata (3163)
- [dpdk] Emit key name in context file as in bfrt and p4info (3205)
- manage lifetimes of Visitor::visited (3168)
- Refactor SetupJoinPoints to make it more extensible
- sfinae-protect operator== StringRef overload (3132)
- typedef with generic types requires type arguments (3174)
- Dismantle Mux expression in dpdk (3087)
- DPDK Backend: Add support for recirculate() extern (3236)
- Fix error message for cast to 'type' (3241)
- Solution for "Non Type_Bits type bool for expression" error (3120)
- Add packet_in.length() and packet_in.advance() methods to a eBPF target (3137)
- Add dpdk version string (3105)
- DPDK Backend: Fix binary operations with 1st operand is not same as dst operand (3209)
- DPDK: Fix missing action definitions in spec file (3109)
- Handle struct expression in ebfp backend (3173)
- P4C-DPDK-Support header field with Slice as a Table key (3151)
- Preserve some types in constant folding. (3094)
- Try to cancel previous Jenkins runs (3230)

Signed-off-by: Radostin Stoyanov <[email protected]>

v1.2.2.1

Toggle v1.2.2.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Release 1.2.2.1 (p4lang#3085)

The current versioning scheme of the P4 compiler corresponds to the P4
language specification. In particular, the current compiler version
corresponds to v1.2.2 of P4_16 Language Specification.

This patch updates the P4 compiler version to the following format

	<major>.<minor>.<patchlevel>.<releasenumber>

Where <releasenumber> increments with each release of the compiler.
The increment in version number allows to distribute updates for the
P4 compiler using package management systems such as
DPKG (Debian/Ubuntu) and RPM (Fedora/CentOS).

This change was discussed at the P4 open source developer days on
November 23, 2021.

Signed-off-by: Radostin Stoyanov <[email protected]>

v1.2.2

Toggle v1.2.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
Enable automatic release on version change (p4lang#2829)

* Use version file

This commit create a VERSION file that can be used to obtain the current
version of P4C.

The current version string "1.2.0+g202103291035~a69e52" contains a semantic
version, date and current git commit. However, the date makes sense only in
packages. Building the same P4C compiler code on a different day should not
result in a different version name. The current git commit is automatically
from the git history.

Signed-off-by: Radostin Stoyanov <[email protected]>

* ci: rename 'release' action to 'static-build'

This GitHub action doesn't create a release, it only tests if a static
build works on Ubuntu 20.04. Thus, using the name "static build" looks
more accurately describes what it does.

Signed-off-by: Radostin Stoyanov <[email protected]>

* Enable automatic releases

This GitHub action creates a release in GitHub every time
the Version.txt file has been changed.

Signed-off-by: Radostin Stoyanov <[email protected]>