Skip to content
Snippets Groups Projects
  • David Faust's avatar
    3ad6c194
    bpf: simulator: correct div, mod insn semantics · 3ad6c194
    David Faust authored
    The div and mod eBPF instructions are unsigned, but the semantic
    specification for the simulator incorrectly used signed operators.
    Correct them to unsigned versions, and correct the ALU tests in
    the simulator (which incorrectly assumed signed semantics).
    
    Tested in bpf-unknown-none.
    
    cpu/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* bpf.cpu (define-alu-instructions): Correct semantic operators
    	for div, mod to unsigned versions.
    
    sim/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* bpf/sem-be.c: Regenerate.
    	* bpf/sem-le.c: Likewise.
    
    sim/testsuite/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* sim/bpf/alu.s: Correct div and mod tests.
    	* sim/bpf/alu32.s: Likewise.
    3ad6c194
    History
    bpf: simulator: correct div, mod insn semantics
    David Faust authored
    The div and mod eBPF instructions are unsigned, but the semantic
    specification for the simulator incorrectly used signed operators.
    Correct them to unsigned versions, and correct the ALU tests in
    the simulator (which incorrectly assumed signed semantics).
    
    Tested in bpf-unknown-none.
    
    cpu/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* bpf.cpu (define-alu-instructions): Correct semantic operators
    	for div, mod to unsigned versions.
    
    sim/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* bpf/sem-be.c: Regenerate.
    	* bpf/sem-le.c: Likewise.
    
    sim/testsuite/ChangeLog:
    2020-09-08  David Faust  <david.faust@oracle.com>
    
    	* sim/bpf/alu.s: Correct div and mod tests.
    	* sim/bpf/alu32.s: Likewise.