[P4] add_to_field, add primitve action-ok

Leskó Dániel ldani at elte.hu
Mon Oct 5 17:11:32 CEST 2015


Sziasztok!

  Az eddigi low level megközelítés sajnos nem fog működni az 
add_to_field(dest, value), add(dest, value1, value2) primitív action-ök 
esetében, ugyanis vagy a kapott paramétereket kell összeadni és egy 
modify_field-et csinálni utána (ez az add), vagy a field mostani értékét 
és a kapott paramétert kell összeadni és szintén egy modify_field-et 
csinálni utána.
  A paraméter pedig továbbra is lehet tábla paraméter, konstans, field 
név vagy regiszter.

A gond ugye, hogy összeadáshoz kevés egy void pointer, meg egy hossz infó...

Szükségszerű, hogy mi minden P4-es primitív action-höz tényleg 
készítsünk egy függvényt. Nem lehetne, hogy a core compiler generál 1-2 
sort (pl ebben az esetben összeadja az értékeket még a típus 
ismeretében, és action hív egy modify_field-et)

Itt is azt érzem kicsit, mint a generate_digest-nél, hogy ez nem 
feltétlenül hardware specifikus dolog. Nekem hardware specifikus egy 
get_field megy egy set_field lenne, a többit meg körégenerálná a p4 
compiler.

Mit gondoltok erről?

Dani


More information about the P4 mailing list