Skip to content
Merged
27 changes: 24 additions & 3 deletions .github/workflows/update-pdf.yml → .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
# This action will run rst2pdf to generate a PDF from the latest docs.
# This action will generate documentation artifacts from the latest doc sources.
#
name: rst2pdf
name: build

on:
push:
branches: [ update ]
paths-ignore:
- 'pdf/**'
- 'rfcxml/**'
pull_request:
branches: [ update ]
paths-ignore:
- 'pdf/**'
- 'rfcxml/**'

permissions:
contents: write # for Git to git push
Expand All @@ -20,6 +26,10 @@ jobs:
run: |
pip install --user rst2pdf

- name: Install xml2rfc
run: |
pip install --user xml2rfc

- uses: actions/checkout@v3

- name: Clone docs
Expand All @@ -32,7 +42,18 @@ jobs:
run: |
rst2pdf rst/instruction-set.rst pdf/instruction-set.pdf

- name: Checkin PDF
- name: Build rfcxml
run: |
wget https://github.com/dthaler/rst2rfcxml/releases/download/v0.3/Ubuntu.Release.rst2rfcxml.zip
unzip Ubuntu.Release.rst2rfcxml.zip
chmod 755 rst2rfcxml
./rst2rfcxml rst/instruction-set-skeleton.rst -o pdf/draft-thaler-bpf-isa.xml
cd pdf
xml2rfc draft-thaler-bpf-isa.xml
xml2rfc --html draft-thaler-bpf-isa.xml

- name: Check in PDF
if: github.event_name == 'push'
run: |
cd pdf
git add .
Expand Down
5 changes: 5 additions & 0 deletions rst/clang-notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,11 @@ Arithmetic instructions
For CPU versions prior to 3, Clang v7.0 and later can enable ``BPF_ALU`` support with
``-Xclang -target-feature -Xclang +alu32``. In CPU version 3, support is automatically included.

Reserved instructions
====================

Clang will generate the reserved ``BPF_CALL | BPF_X | BPF_JMP`` (0x8d) instruction if ``-O0`` is used.

Atomic operations
=================

Expand Down
201 changes: 201 additions & 0 deletions rst/instruction-set-opcodes.rst

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions rst/instruction-set-prologue.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
.. |docName| replace:: draft-thaler-bpf-instruction-set-00
.. |ipr| replace:: trust200902
.. |category| replace:: std
.. |titleAbbr| replace:: eBPF ISA
.. |submissionType| replace:: IETF
.. |author[0].fullname| replace:: Dave Thaler
.. |author[0].role| replace:: editor
.. |author[0].surname| replace:: Thaler
.. |author[0].initials| replace:: D.
.. |author[0].email| replace:: [email protected]
.. |author[0].city| replace:: Redmond
.. |author[0].region| replace:: WA
.. header::
7 changes: 7 additions & 0 deletions rst/instruction-set-skeleton.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
.. include:: instruction-set-prologue.rst
.. include:: instruction-set.rst

Appendix
========

.. include:: instruction-set-opcodes.rst
Loading