@@ -519,70 +519,70 @@ opcode imm description reference
519
519
0x1d 0x00 if dst == src goto +offset `Jump instructions `_
520
520
0x1e 0x00 if (uint32_t)dst == (uint32_t)src goto +offset `Jump instructions `_
521
521
0x1f 0x00 dst -= src `Arithmetic instructions `_
522
- 0x20 any dst = ntohl(*(uint32_t *)(R6->data + imm)) `Load and store instructions`_
523
- 0x24 any dst = (uint32_t)(dst * imm) `Arithmetic instructions`_
522
+ 0x20 any dst = ntohl(\ * (uint32_t \ * )(R6->data + imm)) `Load and store instructions `_
523
+ 0x24 any dst = (uint32_t)(dst \ * imm) `Arithmetic instructions `_
524
524
0x25 any if dst > imm goto +offset `Jump instructions `_
525
525
0x26 any if (uint32_t)dst > imm goto +offset `Jump instructions `_
526
- 0x27 any dst *= imm `Arithmetic instructions`_
527
- 0x28 any dst = ntohs(*(uint16_t *)(R6->data + imm)) `Load and store instructions`_
528
- 0x2c 0x00 dst = (uint32_t)(dst * src) `Arithmetic instructions`_
526
+ 0x27 any dst \ * = imm `Arithmetic instructions `_
527
+ 0x28 any dst = ntohs(\ * (uint16_t \ * )(R6->data + imm)) `Load and store instructions `_
528
+ 0x2c 0x00 dst = (uint32_t)(dst \ * src) `Arithmetic instructions `_
529
529
0x2d 0x00 if dst > src goto +offset `Jump instructions `_
530
530
0x2e 0x00 if (uint32_t)dst > (uint32_t)src goto +offset `Jump instructions `_
531
- 0x2f 0x00 dst *= src `Arithmetic instructions`_
532
- 0x30 any dst = (*(uint8_t *)(R6->data + imm)) `Load and store instructions`_
531
+ 0x2f 0x00 dst \ * = src `Arithmetic instructions `_
532
+ 0x30 any dst = (\ * (uint8_t \ * )(R6->data + imm)) `Load and store instructions `_
533
533
0x34 any dst = (uint32_t)(dst / imm) `Arithmetic instructions `_
534
534
0x35 any if dst >= imm goto +offset `Jump instructions `_
535
535
0x36 any if (uint32_t)dst >= imm goto +offset `Jump instructions `_
536
536
0x37 any dst /= imm `Arithmetic instructions `_
537
- 0x38 any dst = ntohll(*(uint64_t *)(R6->data + imm)) `Load and store instructions`_
537
+ 0x38 any dst = ntohll(\ * (uint64_t \ * )(R6->data + imm)) `Load and store instructions `_
538
538
0x3c 0x00 dst = (uint32_t)(dst / src) `Arithmetic instructions `_
539
539
0x3d 0x00 if dst >= src goto +offset `Jump instructions `_
540
540
0x3e 0x00 if (uint32_t)dst >= (uint32_t)src goto +offset `Jump instructions `_
541
541
0x3f 0x00 dst /= src `Arithmetic instructions `_
542
- 0x40 any dst = ntohl(*(uint32_t *)(R6->data + src + imm)) `Load and store instructions`_
542
+ 0x40 any dst = ntohl(\ * (uint32_t \ * )(R6->data + src + imm)) `Load and store instructions `_
543
543
0x44 any dst = (uint32_t)(dst \| imm) `Arithmetic instructions `_
544
544
0x45 any if dst & imm goto +offset `Jump instructions `_
545
545
0x46 any if (uint32_t)dst & imm goto +offset `Jump instructions `_
546
- 0x47 any dst |= imm `Arithmetic instructions`_
547
- 0x48 any dst = ntohs(*(uint16_t *)(R6->data + src + imm)) `Load and store instructions`_
546
+ 0x47 any dst \ | = imm `Arithmetic instructions `_
547
+ 0x48 any dst = ntohs(\ * (uint16_t \ * )(R6->data + src + imm)) `Load and store instructions `_
548
548
0x4c 0x00 dst = (uint32_t)(dst \| src) `Arithmetic instructions `_
549
549
0x4d 0x00 if dst & src goto +offset `Jump instructions `_
550
550
0x4e 0x00 if (uint32_t)dst & (uint32_t)src goto +offset `Jump instructions `_
551
- 0x4f 0x00 dst |= src `Arithmetic instructions`_
552
- 0x50 any dst = *(uint8_t *)(R6->data + src + imm)) `Load and store instructions`_
551
+ 0x4f 0x00 dst \ | = src `Arithmetic instructions `_
552
+ 0x50 any dst = \ * (uint8_t \ * )(R6->data + src + imm)) `Load and store instructions `_
553
553
0x54 any dst = (uint32_t)(dst & imm) `Arithmetic instructions `_
554
554
0x55 any if dst != imm goto +offset `Jump instructions `_
555
555
0x56 any if (uint32_t)dst != imm goto +offset `Jump instructions `_
556
556
0x57 any dst &= imm `Arithmetic instructions `_
557
- 0x58 any dst = ntohll(*(uint64_t *)(R6->data + src + imm)) `Load and store instructions`_
557
+ 0x58 any dst = ntohll(\ * (uint64_t \ * )(R6->data + src + imm)) `Load and store instructions `_
558
558
0x5c 0x00 dst = (uint32_t)(dst & src) `Arithmetic instructions `_
559
559
0x5d 0x00 if dst != src goto +offset `Jump instructions `_
560
560
0x5e 0x00 if (uint32_t)dst != (uint32_t)src goto +offset `Jump instructions `_
561
561
0x5f 0x00 dst &= src `Arithmetic instructions `_
562
- 0x61 0x00 dst = *(uint32_t *)(src + offset) `Load and store instructions`_
563
- 0x62 any *(uint32_t *)(dst + offset) = imm `Load and store instructions`_
564
- 0x63 0x00 *(uint32_t *)(dst + offset) = src `Load and store instructions`_
562
+ 0x61 0x00 dst = \ * (uint32_t \ * )(src + offset) `Load and store instructions `_
563
+ 0x62 any \ * (uint32_t \ * )(dst + offset) = imm `Load and store instructions `_
564
+ 0x63 0x00 \ * (uint32_t \ * )(dst + offset) = src `Load and store instructions `_
565
565
0x64 any dst = (uint32_t)(dst << imm) `Arithmetic instructions `_
566
566
0x65 any if dst s> imm goto +offset `Jump instructions `_
567
567
0x66 any if (int32_t)dst s> (int32_t)imm goto +offset `Jump instructions `_
568
568
0x67 any dst <<= imm `Arithmetic instructions `_
569
- 0x69 0x00 dst = *(uint16_t *)(src + offset) `Load and store instructions`_
570
- 0x6a any *(uint16_t *)(dst + offset) = imm `Load and store instructions`_
571
- 0x6b 0x00 *(uint16_t *)(dst + offset) = src `Load and store instructions`_
569
+ 0x69 0x00 dst = \ * (uint16_t \ * )(src + offset) `Load and store instructions `_
570
+ 0x6a any \ * (uint16_t \ * )(dst + offset) = imm `Load and store instructions `_
571
+ 0x6b 0x00 \ * (uint16_t \ * )(dst + offset) = src `Load and store instructions `_
572
572
0x6c 0x00 dst = (uint32_t)(dst << src) `Arithmetic instructions `_
573
573
0x6d 0x00 if dst s> src goto +offset `Jump instructions `_
574
574
0x6e 0x00 if (int32_t)dst s> (int32_t)src goto +offset `Jump instructions `_
575
575
0x6f 0x00 dst <<= src `Arithmetic instructions `_
576
- 0x71 0x00 dst = *(uint8_t *)(src + offset) `Load and store instructions`_
577
- 0x72 any *(uint8_t *)(dst + offset) = imm `Load and store instructions`_
578
- 0x73 0x00 *(uint8_t *)(dst + offset) = src `Load and store instructions`_
576
+ 0x71 0x00 dst = \ * (uint8_t \ * )(src + offset) `Load and store instructions `_
577
+ 0x72 any \ * (uint8_t \ * )(dst + offset) = imm `Load and store instructions `_
578
+ 0x73 0x00 \ * (uint8_t \ * )(dst + offset) = src `Load and store instructions `_
579
579
0x74 any dst = (uint32_t)(dst >> imm) `Arithmetic instructions `_
580
580
0x75 any if dst s>= imm goto +offset `Jump instructions `_
581
581
0x76 any if (int32_t)dst s>= (int32_t)imm goto +offset `Jump instructions `_
582
582
0x77 any dst >>= imm `Arithmetic instructions `_
583
- 0x79 0x00 dst = *(uint64_t *)(src + offset) `Load and store instructions`_
584
- 0x7a any *(uint64_t *)(dst + offset) = imm `Load and store instructions`_
585
- 0x7b 0x00 *(uint64_t *)(dst + offset) = src `Load and store instructions`_
583
+ 0x79 0x00 dst = \ * (uint64_t \ * )(src + offset) `Load and store instructions `_
584
+ 0x7a any \ * (uint64_t \ * )(dst + offset) = imm `Load and store instructions `_
585
+ 0x7b 0x00 \ * (uint64_t \ * )(dst + offset) = src `Load and store instructions `_
586
586
0x7c 0x00 dst = (uint32_t)(dst >> src) `Arithmetic instructions `_
587
587
0x7d 0x00 if dst s>= src goto +offset `Jump instructions `_
588
588
0x7e 0x00 if (int32_t)dst s>= (int32_t)src goto +offset `Jump instructions `_
@@ -611,22 +611,22 @@ opcode imm description reference
611
611
0xbd 0x00 if dst <= src goto +offset `Jump instructions `_
612
612
0xbe 0x00 if (uint32_t)dst <= (uint32_t)src goto +offset `Jump instructions `_
613
613
0xbf 0x00 dst = src `Arithmetic instructions `_
614
- 0xc3 0x00 lock *(uint32_t *)(dst + offset) += src `Atomic operations`_
615
- 0xc3 0x01 lock *(uint32_t *)(dst + offset) += src `Atomic operations`_
616
- lock src = *(uint32_t *)(dst + offset)
617
- 0xc3 0x40 *(uint32_t *)(dst + offset) |= src `Atomic operations`_
618
- 0xc3 0x41 *(uint32_t *)(dst + offset) |= src `Atomic operations`_
619
- lock src = *(uint32_t *)(dst + offset)
620
- 0xc3 0x50 *(uint32_t *)(dst + offset) &= src `Atomic operations`_
621
- 0xc3 0x51 *(uint32_t *)(dst + offset) &= src `Atomic operations`_
622
- lock src = *(uint32_t *)(dst + offset)
623
- 0xc3 0xa0 *(uint32_t *)(dst + offset) ^= src `Atomic operations`_
624
- 0xc3 0xa1 *(uint32_t *)(dst + offset) ^= src `Atomic operations`_
625
- lock src = *(uint32_t *)(dst + offset)
626
- 0xc3 0xe1 swap(src, *(uint32_t *)(dst + offset)) `Atomic operations`_
627
- 0xc3 0xf1 lock temp = *(uint32_t *)(dst + offset) `Atomic operations`_
628
- if *(uint32_t)(dst + offset) == R0
629
- *(uint32_t)(dst + offset) = src
614
+ 0xc3 0x00 lock \ * (uint32_t \ * )(dst + offset) += src `Atomic operations `_
615
+ 0xc3 0x01 lock \ * (uint32_t \ * )(dst + offset) += src `Atomic operations `_
616
+ lock src = \ * (uint32_t \ * )(dst + offset)
617
+ 0xc3 0x40 \ * (uint32_t \ * )(dst + offset) \ | = src `Atomic operations `_
618
+ 0xc3 0x41 \ * (uint32_t \ * )(dst + offset) \ | = src `Atomic operations `_
619
+ lock src = \ * (uint32_t \ * )(dst + offset)
620
+ 0xc3 0x50 \ * (uint32_t \ * )(dst + offset) &= src `Atomic operations `_
621
+ 0xc3 0x51 \ * (uint32_t \ * )(dst + offset) &= src `Atomic operations `_
622
+ lock src = \ * (uint32_t \ * )(dst + offset)
623
+ 0xc3 0xa0 \ * (uint32_t \ * )(dst + offset) ^= src `Atomic operations `_
624
+ 0xc3 0xa1 \ * (uint32_t \ * )(dst + offset) ^= src `Atomic operations `_
625
+ lock src = \ * (uint32_t \ * )(dst + offset)
626
+ 0xc3 0xe1 swap(src, \ * (uint32_t \ * )(dst + offset)) `Atomic operations `_
627
+ 0xc3 0xf1 lock temp = \ * (uint32_t \ * )(dst + offset) `Atomic operations `_
628
+ if ( \ * (uint32_t)(dst + offset) == R0)
629
+ \ * (uint32_t)(dst + offset) = src
630
630
R0 = temp
631
631
0xc4 any dst = (uint32_t)(dst s>> imm) `Arithmetic instructions `_
632
632
0xc5 any if dst s< imm goto +offset `Jump instructions `_
@@ -641,22 +641,22 @@ opcode imm description reference
641
641
0xd4 0x40 dst = htole64(dst) `Byte swap instructions `_
642
642
0xd5 any if dst s<= imm goto +offset `Jump instructions `_
643
643
0xd6 any if (int32_t)dst s<= (int32_t)imm goto +offset `Jump instructions `_
644
- 0xc3 0x00 lock *(uint64_t *)(dst + offset) += src `Atomic operations`_
645
- 0xdb 0x01 lock *(uint64_t *)(dst + offset) += src `Atomic operations`_
646
- lock src = *(uint64_t *)(dst + offset)
647
- 0xdb 0x40 *(uint64_t *)(dst + offset) |= src `Atomic operations`_
648
- 0xdb 0x41 *(uint64_t *)(dst + offset) |= src `Atomic operations`_
649
- lock src = *(uint64_t *)(dst + offset)
650
- 0xdb 0x50 *(uint64_t *)(dst + offset) &= src `Atomic operations`_
651
- 0xdb 0x51 *(uint64_t *)(dst + offset) &= src `Atomic operations`_
652
- lock src = *(uint64_t *)(dst + offset)
653
- 0xdb 0xa0 *(uint64_t *)(dst + offset) ^= src `Atomic operations`_
654
- 0xdb 0xa1 *(uint64_t *)(dst + offset) ^= src `Atomic operations`_
655
- lock src = *(uint64_t *)(dst + offset)
656
- 0xdb 0xe1 swap(src, *(uint64_t *)(dst + offset)) `Atomic operations`_
657
- 0xdb 0xf1 lock temp = *(uint64_t *)(dst + offset) `Atomic operations`_
658
- if *(uint64_t)(dst + offset) == R0
659
- *(uint64_t)(dst + offset) = src
644
+ 0xc3 0x00 lock \ * (uint64_t \ * )(dst + offset) += src `Atomic operations `_
645
+ 0xdb 0x01 lock \ * (uint64_t \ * )(dst + offset) += src `Atomic operations `_
646
+ lock src = \ * (uint64_t \ * )(dst + offset)
647
+ 0xdb 0x40 \ * (uint64_t \ * )(dst + offset) \ | = src `Atomic operations `_
648
+ 0xdb 0x41 \ * (uint64_t \ * )(dst + offset) \ | = src `Atomic operations `_
649
+ lock src = \ * (uint64_t \ * )(dst + offset)
650
+ 0xdb 0x50 \ * (uint64_t \ * )(dst + offset) &= src `Atomic operations `_
651
+ 0xdb 0x51 \ * (uint64_t \ * )(dst + offset) &= src `Atomic operations `_
652
+ lock src = \ * (uint64_t \ * )(dst + offset)
653
+ 0xdb 0xa0 \ * (uint64_t \ * )(dst + offset) ^= src `Atomic operations `_
654
+ 0xdb 0xa1 \ * (uint64_t \ * )(dst + offset) ^= src `Atomic operations `_
655
+ lock src = \ * (uint64_t \ * )(dst + offset)
656
+ 0xdb 0xe1 swap(src, \ * (uint64_t \ * )(dst + offset)) `Atomic operations `_
657
+ 0xdb 0xf1 lock temp = \ * (uint64_t \ * )(dst + offset) `Atomic operations `_
658
+ if ( \ * (uint64_t)(dst + offset) == R0)
659
+ \ * (uint64_t)(dst + offset) = src
660
660
R0 = temp
661
661
0xdc 0x10 dst = htobe16(dst) `Byte swap instructions `_
662
662
0xdc 0x20 dst = htobe32(dst) `Byte swap instructions `_
0 commit comments