We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The LE/BE instructions are a remnant from the Linux eBPF ISA lineage. They used to allow endianness conversions given unknown host endianness.
Solana mainnet is always little-endian however, regardless of host endianness. Therefore an LE opcode doesn't make much sense.
In practice,
le16 <reg>
and <reg>, 0xffff
le32 <reg>
and <reg>, 0xffffffff
mov32 <reg>, <reg>
le64
Therefore I propose renaming the LE mnemonics to avoid confusion.
le16
mask16
le32
mask32
nop
The text was updated successfully, but these errors were encountered:
No branches or pull requests
The LE/BE instructions are a remnant from the Linux eBPF ISA lineage. They used to allow endianness conversions given unknown host endianness.
Solana mainnet is always little-endian however, regardless of host endianness. Therefore an LE opcode doesn't make much sense.
In practice,
le16 <reg>
isand <reg>, 0xffff
le32 <reg>
isand <reg>, 0xffffffff
ormov32 <reg>, <reg>
le64
does nothingTherefore I propose renaming the LE mnemonics to avoid confusion.
le16
intomask16
le32
intomask32
le64
intonop
The text was updated successfully, but these errors were encountered: