[video member=miotatsu stream_platform=twitch project=book title="2.4-2.5" vod_platform=youtube id=SdIJjDvEkcs annotator=Miblo]
[0:01][Recap and set the stage for the day][:speech]
[1:49][Review where we're at]
[2:27][Chapter 2.4 - RV32I Integer Computation[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[3:43][A few words on the Spectre and Meltdown vulnerabilities due to branch-prediction and speculative execution][:performance :security :speech]
[8:19][Chapter 2.4 continued[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[10:08][Point out the mistake in the book's description of the "call" pseudo-instruction[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :speech]
[13:30][Chapter 2.4 continued, on RISC-V's simple arithmetic instructions[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :mathematics]
[16:47][A few words of praise for the concision of the RISC-V base :ISA][:blackboard]
[19:36][Plug [@cmuratori Casey]'s Meow hash,[ref
    site="Twitter: @cmuratori"
    page="Introducing the Meow hash - a non-cryptographic hash capable of 16 bytes _per cycle_ throughput on modern CPUs while still cleanly passing all of smhasher"
    url=https://twitter.com/cmuratori/status/1053453319299977221][ref
        site="Molly Rocket"
        page="Meow Hash"
        url=https://mollyrocket.com/meowhash] [@mmozeiko Mārtiņš]'s ports to ARMv8[ref
    site="Twitter: @mmozeiko"
    page="Meow hash for ARMv8"
    url=https://twitter.com/mmozeiko/status/1054786688361279490] and C without special hardware instructions,[ref
        site="Twitter: @mmozeiko"
        page="Meow hash in generic C"
        url=https://twitter.com/mmozeiko/status/1054942982099496960] and @Miblo's plea for a RISC-V port[ref
            site="Twitter: @miblo_"
            page="RISC-V next, @miotatsu?"
            url=https://twitter.com/miblo_/status/1054800216371707904] which @miotatsu will happily contribute[ref
                site="Twitter @miotatsu"
                page="I will happily contribute a RISC-V version when the standard crypto extension proposal is accepted/publicly documented - Meow is built around having AES in hardware"
                url=https://twitter.com/miotatsu/status/1054894248603148293] once RISC-V gets the proposed vector and crypto extensions[ref
    author="G. Richard Newell"
    title="Using Proposed Vector and Crypto Extensions For Fast and Secure Boot"
    url=https://content.riscv.org/wp-content/uploads/2017/12/Wed-1418-RISCV-RichardNewell.pdf]][:hashing :isa :language]
[37:01][Chapter 2.4 continued, on RISC-V's comparison and branching instructions[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[39:15][Summarise the concept of auipc and jal to allow for 32-bit immediates][:blackboard :isa]
[46:16][Figure 2.4 - The registers of RV32I[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/][ref
    site=RISC-V
    page="User-Level ISA Specification v2.2"
    url=https://riscv.org/specifications]][:isa]
[52:27][Chapter 2.4 continued, on the differences between RISC-V and ARM[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[55:36][Chapter 2.4 Elaboration 1 - "Bit twiddling" instructions[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[55:54][Chapter 2.4 Elaboration 2 - xor enables a magic trick[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :mathematics]
[59:47][XOR swap, thanks to algebraic reversibility][:blackboard :mathematics]
[1:19:12][Chapter 2.4 Elaboration 2 continued[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :mathematics]
[1:21:54][XOR linked list, again thanks to algebraic reversibility[ref
    site=Wikipedia
    page="XOR swap algorithm"
    url=https://en.wikipedia.org/wiki/XOR_swap_algorithm][ref
    site=Wikipedia
    page="XOR linked list"
    url=https://en.wikipedia.org/wiki/XOR_linked_list]][:blackboard :"data structure"]
[1:43:36][Chapter 2.5 - RV32I Loads and Stores[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :memory]
[1:46:23][Recommend [@rygorous Fabian]'s videos on CPU µArch[ref
    site=YouTube
    page="Fabian Giesen"
    url=https://www.youtube.com/channel/UCcRaa0AcYX32c0m8wJJHNWg/videos]][:isa]
[1:50:55][Chapter 2.5 continued, on differences in load / store instruction between RISC-V and MIPS and ARM[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa]
[1:51:52][Recommend [@babbageboole Robert Baruch]'s LMARV-1 video series[ref
    site=YouTube
    page=LMARV-1
    url=https://www.youtube.com/playlist?list=PLEeZWGE3PwbansoxKjjMKHQqS_2cm8i60]][:isa]
[1:53:23][Chapter 2.5 Elaboration - Endianness[ref
    title="RISC-V Reader"
    author="David Patterson and Andrew Waterman"
    publisher="Strawberry Canyon"
    isbn=9780999249116
    url=http://www.riscvbook.com/]][:isa :memory]
[1:55:27][Endianness from Gulliver's Travels[ref
    site=Wikipedia
    page="Gulliver's Travels"
    url=https://en.wikipedia.org/wiki/Gulliver%27s_Travels]]
[1:59:19][That's the end of 2.5][:speech]
[1:59:59][@krish2nasa][I missed this episode]
[2:02:06][Endianness in practice in pcalc[ref
    site=GitLab
    page="pcalc"
    url=https://gitlab.com/riscy-business/pcalc]][:memory]
[2:02:18][@krish2nasa][I have a question for you: Is hamming distance implemented in RISC-V :ISA and the compiler for more energy / code efficiency?]
[2:05:31][Endianness in practice in pcalc continued,[ref
    site=GitLab
    page="pcalc"
    url=https://gitlab.com/riscy-business/pcalc] including connecting to an X11 server using the \~/.Xauthority file][:memory]
[2:12:05][End the episode there][:speech]
[/video]
