Skip to content

Commit

Permalink
Feature/opcode agg2 (#3266)
Browse files Browse the repository at this point in the history
* Implemented bcaggandi

* Implemented bcaggori

* Implemented bcaggxori

* Implemented bcaggsumi

* Implemented bcaggork

* Implemented bcaggandk

* Implemented bcaggcount

* Implemented bcaggmergestate

* Moved the aggregation opcodes to a dedicated registerer

* Added the go suffix

* Stubs of functions that are never called

* Reduced to common frameworks

* Implemented bcaggsumf

* Implemented a couple of opaggslot* opcodes

* Implemented bcaggslotavgi

* Experimenting with opaggslotsumf, not working yet

* Implemented bcaggslotandkgo and bcaggslotorkgo

* Switched to slices

* Staticheck

* Working on bcaggslotcountgo, result mismatch

* bcaggslotmergestate

* Fixed bcaggslotcount

* Implemented bcaggslotsumfgo

* Implemented bcaggslotavgf

* Implemented bcaggapproxcount

---------

Co-authored-by: frank-sneller <[email protected]>
  • Loading branch information
2 people authored and philhofer committed Jan 2, 2024
1 parent d8f5a4e commit 76df1cd
Show file tree
Hide file tree
Showing 2 changed files with 461 additions and 6 deletions.
2 changes: 1 addition & 1 deletion vm/evalbc_approxcount.h
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ TEXT bcaggapproxcount(SB), NOSPLIT|NOFRAME, $0
// update HLL register
MOVBQZX (R15)(DX*1), BX
CMPQ BX, CX
CMOVQLT CX, BX // BX = max(DX, BX)
CMOVQLT CX, BX // BX = max(CX, BX)
MOVB BL, (R15)(DX*1)

loop_tail:
Expand Down
Loading

0 comments on commit 76df1cd

Please sign in to comment.