p4lang-p4c-nightly:amresh/add-duplicate-cpname-check

Last commit made on 2021-05-10
Get this branch:
git clone -b amresh/add-duplicate-cpname-check https://git.launchpad.net/p4lang-p4c-nightly

Branch merges

Branch information

Name:
amresh/add-duplicate-cpname-check
Repository:
lp:p4lang-p4c-nightly

Recent commits

d0ca332... by Amresh Kulkarni <email address hidden>

Error on duplicate control plane names

9de755b... by Carl Geoffrion <email address hidden>

Update StrengthReduction pass relative to signed shift left operation (#2754)

* Update StrengthReduction pass relative to signed shift left operation

The current code does not slice a shift left operation if the source
field is signed, e.g.:
   unsigned_val[7:0] = (signed_val << 3)[15:8];
to something like this:
   unsigned_val[7:0] = signed_val[12:5];

This is not in-line with the P4 Spec "8.6. Operations on fixed-width
signed integers" chapter which state "Shifting left produces the exact
same bit pattern as a shift left of an unsigned value. Shift left can
thus overflow, when it leads to a change of the sign bit."

Slicing the operation also help reduce field constraints down the road.

* Updating testdata strength4 output

482eaa1... by Jakub Neruda <email address hidden>

Find install_manifest.txt for uninstall target (#2752)

948ec62... by Andy Fingerhut <email address hidden>

Add match_kind optional to PSA include file (#2696)

17b384f... by Michal Kekely <email address hidden>

Parser unroll gtest now does not modify environment (#2750)

03bfd25... by usha1830 <email address hidden>

Fix dpdk regression failure: Duplicates declaration (#2744)

* Fix dpdk regression failure: Duplicates declaration

* Fix cpplint errors

* Added checks to ensure parameters exist before accessing them

* 1)Added error handling for unexpected number of arguments.
2)Fixed typos.
3)Updated reference output files.

* Updated reference output for psa-header-stack.p4

* Changed error type from BUG to Model error for PSA acrhitecture

5b9aa15... by VolodymyrPeschanenkoLitSoft <email address hidden>

Changing relative paths for parsers Unroll gtests (#2748)

* relative path's were changed by absolute

Co-authored-by: Volodymyr Peschanenko <email address hidden>

3afe360... by Andy Fingerhut <email address hidden>

Minor updates to a few README files (#2747)

49eb642... by Han Wang <email address hidden>

dpdk: add support for header stack (#2745)

32b157c... by Andy Fingerhut <email address hidden>

Update PSA test programs to always put parsed headers inside a struct (#2746)

* Update PSA test programs to always put parsed headers inside a struct
Many of these test programs were written so that a single Ethernet
header type was being passed as the parameter to top level parsers and
controls in the PSA architecture, rather than the more typical struct
of multiple headers. This was not necessarily an error, but at least
the v1model architecture explicitly documents the user-defined headers
type H must be a struct containing header/stack/union types, but not
itself a header. It would be best to avoid any special-case code in
the PSA back end to handle this unlikely use case. I call it unlikely
because almost no one ever writes a program that only parses a single
header.

* Update expected output files for DPDK back end

* Updated expected outputs for one more test program