From 435e0383151f1dea0630aa37520d02b525ebce15 Mon Sep 17 00:00:00 2001 From: hak8or Date: Wed, 14 Mar 2018 13:58:17 -0400 Subject: [PATCH] Updated performance.md --- Assembly_Comparison.PNG | Bin 54491 -> 58155 bytes Performance.md | 66 ++++++++++++++++++++-------------------- 2 files changed, 33 insertions(+), 33 deletions(-) diff --git a/Assembly_Comparison.PNG b/Assembly_Comparison.PNG index de039d9c0d1c108bea4372096ac82bb5744b83e8..53d06d15ac8cda5969445ab28f14529e3d78f71b 100644 GIT binary patch literal 58155 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 S_(=u^1_n=8KbLh*2~7acv{K{% diff --git a/Performance.md b/Performance.md index 889e6fb..bb0f43f 100644 --- a/Performance.md +++ b/Performance.md @@ -11,14 +11,14 @@ For a test example, let's use an imaginary Cortex M0 based microcontroller with ``` # Imaginary super simple GPIO Peripheral (GPIO_Base) GPIO Peripheral Base Address: 0xF0A03110 - # 16 bits wide (2 bit per pin) + # 8 bits wide (2 bit per pin) # 00 = Input, 01 = Output, 10 = Reserved, 11 = Reserved # Our LEDS are on PIN1 and PIN3 GPIO Direction Register: GPIO_Base + 0x00 # 8 bits wide (1 bit per pin) # 0 = Do not toggle, 1 = Toggle - GPIO Toggle Register: GPIO_Base + 0x02 + GPIO Toggle Register: GPIO_Base + 0x01 # Imaginary super simple UART peripheral (UART_Base) UART Peripheral Base Address: 0xF0A03120 @@ -43,8 +43,8 @@ This snippet is based on a CMSIS style code, which makes heavy use of preprocess // Structs to map onto memory for each peripheral. #define __IO volatile typedef struct { - __IO uint16_t DIRECTION; // Base + 0x00 - __IO uint8_t TOGGLE; // Base + 0x02 + __IO uint8_t DIRECTION; // Base + 0x00 + __IO uint8_t TOGGLE; // Base + 0x01 } GPIO_TypeDef; typedef struct { __IO uint8_t TXFIFO; // Base + 0x00 @@ -64,21 +64,24 @@ void Demo_CMSIS(){ GPIO->DIRECTION = (GPIO->DIRECTION & ~DIRECTION_PIN_MASK) | (1u << (1 * 2)) | (1u << (3 * 2)); // Enable the UART. - const uint8_t UART_STATUS_ENABLE = 0b0000'0001u; + const uint8_t UART_STATUS_ENABLE = 0x01u; UART->STATUS = UART->STATUS | UART_STATUS_ENABLE; // Loop over forever. while(true){ // Put a string into the FIFO. - // UART->TXFIFO = 'H'; - // UART->TXFIFO = 'i'; + UART->TXFIFO = 'H'; + UART->TXFIFO = 'i'; // Start sending out TX FIFO contents. const uint8_t UART_STATUS_SENDING = 1u << 3; - // UART->STATUS = UART->STATUS | UART_STATUS_ENABLE | UART_STATUS_SENDING; + UART->STATUS = UART->STATUS | UART_STATUS_ENABLE | UART_STATUS_SENDING; // Wait till the UART is done. while ((UART->STATUS & UART_STATUS_SENDING) != 0u) {} + + // Toggle the GPIO. + GPIO->TOGGLE = GPIO->TOGGLE | (1u << 0) | (1u << 3); } } ``` @@ -91,39 +94,32 @@ This is written to mimic the CMSIS example as close as possible. #include "cppreg-all.h" struct GPIO { - static constexpr uintptr_t GPIO_Base = 0xF0A03110; + struct GPIO_Cluster : cppreg::RegisterPack<0xF0A03110, 4u> {}; - struct Direction : cppreg::Register { - using PIN0 = cppreg::Field; - using PIN1 = cppreg::Field; - using PIN2 = cppreg::Field; - using PIN3 = cppreg::Field; - using PIN4 = cppreg::Field; - using PIN5 = cppreg::Field; - using PIN6 = cppreg::Field; - using PIN7 = cppreg::Field; + struct Direction : cppreg::PackedRegister { + using PIN0 = cppreg::Field; + using PIN1 = cppreg::Field; + using PIN2 = cppreg::Field; + using PIN3 = cppreg::Field; }; - struct Toggle : cppreg::Register { - using PIN0 = cppreg::Field; - using PIN1 = cppreg::Field; - using PIN2 = cppreg::Field; - using PIN3 = cppreg::Field; - using PIN4 = cppreg::Field; - using PIN5 = cppreg::Field; - using PIN6 = cppreg::Field; - using PIN7 = cppreg::Field; + struct Toggle : cppreg::PackedRegister { + using PIN0 = cppreg::Field; + using PIN1 = cppreg::Field; + using PIN2 = cppreg::Field; + using PIN3 = cppreg::Field; + using Reserved = cppreg::Field; }; }; struct UART { - static constexpr uintptr_t UART_Base = 0xF0A03120; + struct UART_Cluster : cppreg::RegisterPack<0xF0A03120, 2u> {}; - struct TXFIFO : cppreg::Register { + struct TXFIFO : cppreg::PackedRegister { using DATA = cppreg::Field; }; - struct STATUS : cppreg::Register { + struct STATUS : cppreg::PackedRegister { using Enable = cppreg::Field; using Reserved0 = cppreg::Field; using Sending = cppreg::Field; @@ -146,18 +142,22 @@ void Demo_CPPReg(void){ UART::TXFIFO::DATA::write<'i'>(); // Start sending out TX FIFO contents. - UART::STATUS::merge_write(1) - .with(1).done(); + UART::STATUS::merge_write() + .with().done(); // Wait till the UART is done. while(UART::STATUS::Sending::is_set()) {} + + // Toggle the GPIO. + GPIO::Toggle::merge_write() + .with().done(); } } ``` ## Assembly results -[This](https://godbolt.org/#z:OYLghAFBqd5TKALEBjA9gEwKYFFMCWALugE4A0BIEAViAIzkA2AhgHaioCkATAEK8%2B5AM7oArqVTYQAcgD0csGADUqAA5rS2YMqYEARqRakAngDouABgCCcgFR2r15XeUABAGYEm2ZX//qmtoAtCxMTGZITi7uLGJESGT%2BygByBBiswsoAwqxiAG7YemzKEGyoeYXFbsLYbJgmbNhmGAC2AJTRrm4YaiakBMBIRDnofQNDIzyW9JbB0/QAHMoAynUNTaOkambK1uHKE8NZWrWkhZgWNi5yTnc8AMwE5UxiOMpcD9mowkSEbERPrh7k8Xm9fJ9skQTGpsAB9IhGYjCIEg54VcEfL4eMTlIgEdBsMKomy8UEY96QvStZEk6xOBSqDRaYBwgAi2C8TWEkTRHnqnJyAAUhQAlXAAcTh2RF4qlbNwADEAJIpXArOEACRBOC5vhlYsl0tlRoVKrVGu1NiJrWwwjULCkTKCOi4AHYBNd/GJhM8dNZMJhTsIEVi2cpfpgQCAxM8iGpEQjPp7nN7fRxlAB1AiYBKhz7hyPR2MAxZJh4p5I%2Bv3KADyHg8tSI%2BYehb%2BxbjZcBFei/iI2FaalY/axUJhdRYtuUABU6clfqQxKgRtDYXDWixhABrD4e3vJPwYNi/bAAD00EaILHxqFUhN%2BM%2BU%2BTCYghrcvUZAbDEtoGqDh1K0l8s4PLg0YbqeECdD2Xp%2BO6bLJncboIaSjzrAQHhwaSNiMtYqBSMIwhCugeioOYUSoU8/K6sKhpStY2TZOqKxCrWAAyyrZAAmlqOqcs8%2BomvRjHMaxHHcbx1qTnaDpOoELK7pWfYDkO15vmOsI2r4ACy2nKrWCLkMoq4TlO05GdOygbtuRn1o22DNiM6ANk2c7%2BAuS4jKK2gECepDeSwmCKfuB5Hie56kJe17pHex4jPo6AkcovkIgM%2BQEGEYYhQe/gQNZO4FgWxnjuum5bpCIFgSAz6vNg7QfDwABsvCNaUzn2SMhXvpYYjQUpOX9oOw7qSZWnKAAqmGT7oDmbk5c8xS%2BL80W3pZWiBRA2U5bFD66fpCKuGFIytDS6Bwjg6VSOQW0DeOY1FiAE76D4cIYZCSgpYiBDpWERnjY4oHRiZU3fuECakDd21Qzl9VsOgZ5SAmwWwdDWhEBIJTLTecKoJu3bZJVUB2CdBLndgl0Qk1VllfVqKgco7VNn1kPwYhKPJINqkjpCo3SRNU35DNmBzQeC0CVFN6PutmCbez21Hcoe0GUQh33sdp1kxT11y7dml8w9T0vW9XyfWlGVMH9ANVcDRWg0w4OQ9DTvKLD8OnojnV7jrB5oxjEvpDjeMVUCEDExrF3pHVbOpjlrMwTHu4IfHHMqcNo681OSuGcVetmRZ1M2XWLkOaGjMOSLHnLso3nAL5/akJmAzc17CfJEdZ4XljMUKwlSWm995tZd7yR5WVWXviZpXbsHgPVS%2BdUNc1VMQGXnWtkVPXM97nNpzzd185NRWC7NoGQ2Lmxd7ex9BQA7k32Cy6321ZyrO3q6TEdXY7/iWTVr7a0/XWpklrtkekSZ68JjbZA%2BiGL6P0LYTStkDccIMxBg0RN/Z2ztXYI2wEjd0/VoZhw/uTSOU1L6B1%2BDPXAj8sEj2IWdT%2BlNWoAD98q0zdNkUoEA/7qUhAzYuRBaZU3YZgl20coZx0ISnIaal077ynIfd818RbJHPiAla00czKDvsQB%2BYiX6qzilZcOpCv7Dx/k%2BeeACsEZxAZ%2BQ2kCPCQn7vAy2QJkGwlQegiGFi6HQxwe7PBntpHbQYZrMhR954SO2lIkKcSUY7zkXvXOOk9LKyMnYmc%2Bd8q2UEaXQR%2BdeEV0RJ5auPk/KNz0dkNW7AQmQ3bhFf2t4e6JSYMlWBZtMqFT8aUfK49wyT3ytQ6MvDhFL1aivQRAzlCbxiQNVOySvhZKUeGFRp9vbqOaVo2%2B99aHO0MW/ExJCtZiKyQbcBRtnFfBgalAev1EEeJADbd8dsHa9P8TDZQcNcH4Jblg8JTDyFXmxrjKhwEQ5iPoSTRhZjmHKDYTTXcXCoC8NHPw1e4yC5bk6L0regDE7zIPEk7myyFG%2BFWTs1R/gtmXx2TovZBj0kHSOTCiJ5iCUc3JR%2BaMjjXrXOyK4827jZ4vPDG8jBHzPku2%2BW7D2yNOX%2BEBXCgW0Tk6xOQkShJCdK4jGlnCQkTATAKqhiSka3KX6ZO5eZR8uSi4dQKR1alfhaUgpimtbAG0FaHIVmyphgT5UELEb7UgJQa512wP5T1wsviWuydioyq8nnSzyqYim%2BLJGavVXBLNhDdWHGjXCXRI4QAFsCgatgRqTXbTNfI1JitmVECtfWm1lk7V2SbI61yGyCWus0dfBleiIA%2BrVsc2FpypXSoCKO3%2B88A3BOrU7cNlT76QjjTau1SbZ7Fofn6uFRkxlEuSNq01izSUaWAQ2/aTac6XtbQm%2B1nanKFMfMUntUM%2B2SwHTu4djajEPj3em2Vvz6m9OXfXKp/YalxTqWuxtFkjKbpfW%2B4EvTow/sA5HDNGqk6hL8LWlJl641ZPvcM9921P0xQHU2X917/3v3HVhyGPygl/LwwecDkbIPYGg8tAEcHr0IYfT1RDZVnUHnQ3szDUhsOx1zZDAjZL63EetTksT5H5qVvFnSgdFRPWkFo8rejY72VR29ixwN/znacYbvfXjV5%2BOxvg/Gu1ImEVkdQ4qvwkmh3Sajtmg8J6a1nvNcp5zJG1PTw06LLTF83VXyFsZdAwBgA%2BEMyy31aamPmblQuoNvTlUU2BStSh%2BNCahz87TAArLgbFsnAvyZRkFvw%2Bad0VqrflglimL1jRUy2yLW48kOufU66LajYsaK/Yln9I7jF%2BZsVOz5CtZ21XnWxsRNnuMCYyfGoZ6mCZPN4UZHqTyf1Qv8PN7haLIQYsEVi0Rk7FtPelfV49jWushbrUR8LqnbVlSG0%2BgRHUilqs8x%2Bib2zv17NmwBrLMngOsdA158ptcV3VNqY57I52/DrubfCMjB3Z5HdmWIIyqL57oq%2BEDpmi86vY8W%2BJ5IPn%2ByppOUxgLb3cPxPe6zSi6FMIfGwrYOQM4kREB5BRekjwMICkwgaOUcJpyimsMqaclo%2BJ6logrpXKu1eSWsFpe0jpfDyW0Iu4yn3ITZlzEgUMKwCAAC9sAlMXFXGz05xxEu60CS8ruvIVPrh72EkJFhiB9wQ5Q1YMxip5TGTs5Y%2BCEoC97%2Bm%2Bb3ee6%2BPQRqYf6YR6jzoGPD0SxECzwnpPhCU%2B1bTwHyNQfndfAeDwHPtW8/pgLygoqRe4yN7L9q3nUuHj86wvSHCIvayFFIB4Jg6Ab68kojLmi8ujS1gAGq4FFIqNitZMz67JLqcWS%2BpSr/X5v7f%2BvDeyRN8yM3nWL/G%2BSgCSNRImBZE6zIrmfDvbW7zCMTMC2gFjTp7B5fCZhPLAxHYKbcpAH17ZCgGiooKASAhNbRb5qoBIDYCoBbgGoT5T4z7m5Vht4FrCBoJrwoRdbcoPRxjaBGBMA4wY74y9wILXZfBFSIFgEZ6EJ96aqkjcED5D6C4j7C6KxlRz4D4L6CiH5wjaTWArAADSu%2Bjw%2B%2Bmwkh0hch5%2B0kRuck1%2BroVm%2BGluSmRGZU5YYO06cUHckU2kRhx0LAW4%2BOZUEACs3%2BtuIwN8OYCQa2SOUMIaJQrhNuMylgWIio2OJ2j2TsIA2OFCYK%2BMlh24xh%2ByU6o8thU85UsaVhIcThCIEAvhCQygwQyg9A7QtMLBVOBRyK%2BR2O9WzWFusi56WSMRWB3YJhh4as5hwhsR1hSRwgSAGE/YmAyRDho6GRLhbhSA/%2Bz20qCsHaJcI2NOFmeWuhPsDkfskRQcqR7RIcG4SRBO9RcR2RSARRWOVOmKWqPOvBZI/Bdwo%2BqwSAgUM%2BK%2B88ohZI4hcuQkcIKwmo1gbI2%2BK%2B1gbE40uAChDwShgkdEbxHxXxmYPxfxAJVoBuGhl%2BzoCkb%2BykNRoWl6NmRkjBE0tQKwNxmAM%2BLuZSuJtxN8%2BBph4Unc8WRyWJPo8IXRJJU0HgYQtQJxXOiS%2BhPWfMNmhJVcxJ%2BJN8kIGJxki49eLeCx84VJWSNmnivgb67GjSlJmirSSUtJcI9J/JU0pS9enB727%2Bu8BhgBNeEM0WUpRpMp1xJJgpRpmSIph2FOPSBK0pIApw5cyeHJppqO9cIsCpkUyp7SfJBJXwQpWpTyqp6pgZKY/e5x9QGEw%2BDIIu2kkawA2A3Gjx0u1EEhrx2k6%2BEouAmYooquMJGuB%2BWZOZeZBZ04RZUktomhV%2BLo5u3u28UB1pkB9aTpwMuSkMUxjk1ODkYxXKbZZpzyKCxSyBtWFQm4WQiZpAyZ3GCIQ05uagYgz06Q4R3s%2Beyg%2Bgm48IMeHpEapAMpRKmg30aka5BKFCk5kaRAEASgTp4ZN8xYtQapeJM%2B/ZU6vAPAv4yZg6I4vksqIwLAz43gLAECygHgSQ95VitUBanpkaH5r25J/YTSdKPc25CIKCcIjoqAP4aCakfRzBZBWC5O0FN2Rxd2tOoiHOiFrRKFo6W5T5wMdBrQ%2BgAkfR/SRUZG7G05s59885Q4UEwUup/gS5K5qAZ54Oi02y3FKZvFRAC5mxD8HhikBa6MoagluG5ekM0lc5cl/F3qSZMleifFTALURR4YOAPg/YR6/g2lslQ0LUDMsIRgJAxpbIAxxitlRlulJlTUZlygFlDk2pWlBlOl9lVMYwka14ZABYw6IVdlQ4LUplU0AVVlVFOOcVXlC5EVzl0VrYsVM5hl/YxlflKVQV3snlRV3l%2BVPFmVCVTUSVRUpV1lLqEOA6%2BJTQAlCsiVVMcx62vSe5fk0YMODGpmQ8yOyQTppAN864A4cIagM0j%2BBmCFOUm2dm9BN2j2A19cQ18G9OW1kaMpb5TsTFLFTQbF/29OIm9OmF%2BEOFw0%2BF0SoR0qp2UmcO/m7GVRepSyWO/V3KioR1B49FO5KCTQ01EBv1LaU0FVO59lLBj2GJ9OEAJ1rFyRZRio4ENMANUMV1j2SNWFd1eFcI12VMLC6NIA7CZRUAoNRN9pxRXCZNmKi89O4x/iZND241LNgWY2/g4m6irZl6FyIFVyG1yOEAVBoazJ0YaBGBWB6AOB0%2BApcNHNfgd5ju2ARk1NxOEAbNY8dMtWDNd2zN4xyadoJBoyc6WNP8RtdC7Bwe9V9V3srhCQnVo63VrUvVnhzs3hserQctD804GNthUEy1mlTWQlehqJ6KTZg5sFFA/Nhpsd5pwyY5IUE5hEisGVzchCIlpE4l20G5QN6FXiRU%2B1B5w5wB2daUp5DSLRyFVJqFDFGFbQp12A5124U0nFIUOdq5NdZhddmi0N1MQdDdwNXiYyCOlm7GyQ3t0NPCc6zVodBKs90NbtVkN8HhkMpaN12FrQuFvRNNtUeUs%2B29BN%2B949Qa4dB4s9%2BlBVW2vlyVRQgVC9K94VTlUVrl7lu0mdzu99jVj9qVXF39Dl2V79MVL9EyJV/9ZVvarViW7VilRyq9HtZJABXJQ5w1JmQKDp0qk101torQc1C19cUEC9E1RpW2St0qpdO1gm9OhdJkltOUyNZ1yRjDB4IRytTsL1vmb1RkJ9u991B9r4Idn1KJH%2BX2Y0QR3NLVklK9QZ1pygzDrdqN7o9NGNUWtWTtkuRFI9Rdspc6TNPVuWfVyOF5hEV5EAlBIYwg0kItnNNaf10YDoWgAIcILI%2B5bDi23JT1z2dptUnjNtPAPAXgRQQUf5cMIwHgpA6ArQxk6BEYfM7jfkD%2BVkBlRaq6QTIdyQZN81pEJgQMn2O6djny9D44ATfgpTsI5TygOtNk9OBtTqPjDOoEm0TU/De9yjxOh6aVixqlbA9OD0vthQ8RU6cj2QQpSNzdKN7FnCNT6jOKjOzsgdD87Tgjh6TTB4Ijl9x5z4/YedOUZjZw15t5Q595j5dJL5N81TscQTX5vgO6HS/5yggFLAwFoF4FkUkFaKSTXpmTC9PpGdt9ey9UW9%2BNAjhNvCEAm86l/ztdF419dFaF4BILijYLHTD1h9%2BQHCAgl9yQlTvgqzELaqOpbJ9IZxaEMZAulxQhNmaZVEsuWuRocoyoKwlZoogJwJjLUozLrL6%2B6hNZCJpuOhFeHJkMAYQYdosCKO4rwYANQxKOThANpddeVpwAThttvg3kTY9xJF3Up4lgANWJ40OJlzjJzJzuKdKM1esdKDkehBu5zZsdKr8jarIxGrC9G5L8AsJE0UPgt6sLfdipksCsMrkroYhdgUEr6dRUNcobhEAbFJnz9dgxIxoYvoTuU0Nc6rPTALtFxiwMLppB5S2rxLkMG5kFRUAZit4zCjxr2AVbdM7GdKhyU1M1BD814tAlyJTs3tWg4tQQzYUR22GWasIcEbgYwYWzpLUMebu0f6hwZ0%2BDhDnb2LwaSxalfbi1A7pWkI3q87R0Y7aFkbk7C9ojEd4jhGkjvNEOzbQDBpfMOTxgdQzYPzkaRktTKRTRB4dz6TQ6CsWSZN4BBjyD3bqM67/Tj2YzAHTjT7rjr7FAcz5N6mX7WCyzUAc9urhxajIAjNDlH7hRp7uLYj%2BpP1yOAHbDQH/jZy1qUN39xlxT/i0HIAzjz7bjLZj2H71TDTTY1To5nD9j4m17kll88d%2BsoCfKUCYi4tz%2BwgUt6BmB2BkauB1bAzatB61ipQH7WIwI9M3HDkuK/Hvjs8pwZtc8VHvSs4GzXD8BdtEykMP7P6SloHXh4HPtftEAAdSHQdBHPTZ7zSmF5jpA15WbIxygSgG8pO1tPNQTShNYLAKO%2B5t6AiOioXPUjzETzz4QM%2Brd8FrJ0cUZFLhAVLQujIioBAoTdLzxXLcIPLbLKouAbEbIHL/EyhrxtXJ%2ByoDXTXsJd%2BWh9ZoHjZ5B9afA25CNX%2BqbIwZXoTirXZ%2BSk35XTAmA3ZSr3KeEBEREJE6QJg8SKBpSVcU3i3trG5LHcHRpU0I3tQ3JPTG5Dr9aJ3L7Q5JkHrhBXrJd3K93bHidIAL8z3NYuTW3U0a3krxEeTCbSFQb3cKbNuoYexU0B3mA2b8pcLSbSpo63ZXaDkcPC3S3giYPNFyb%2BbKC7F74Clz5PRyjBOT3LTex1z9jdPvZQieP/dwbdFbSygNx1jpr2DzsH38H0YZzMYT595C93WlHr44mqB8nst8teBzn8syP2yfpRBJBY10q0nktaAUvink%2BCtDHU6vPpzanUX4Nhnfgo87detDPBn9PnyJtxBTARA5ttUhH07FGN7kpKCKaTn4p203t/3ZEBTkd0sw7N6DDD6W6NC9OBvX30Tbby7i1JDVnNvT2U7Iv7pNHb3wBKHNK7v/aQskMP6/7FB4nlyTi70YAHPz5JJFkGrUFwjzGxjntTs/v%2BTzyhTq6Tmgmt6omhcEfIzWC0f%2B50YrbS7HbCf7QvHj1pvyfnyqfPTovGfE8Ge2fMj2mVJKijteyRf9agtEC/KkIlf95NfNn%2Bjq2DfIGtrZDsdFDF6eOPfg2DPiz3mIAZ2TUg/g1IAAvXT89PTyQLfgf4jIpp3x2xh89sUWC9H43/gk5IUj2d/ttWdJ4NZqY/YhhPyj6wcHuX3L/lPxn44Cp0c/djAvzHoacSM3rE%2BCvwfzCd4sonKcLv2FqUNnYSgQ/pczERu0xE0tBTn7R16BlsgKGYfqbQd5sNLO0/Z2O6035DpveU9YSptwD5t9I6QA7IH1nVrh9kMoOfvjz3QGfch%2BCAuPsgMjSJ9hBuAvAS7zT6R1CMdfJQSQKPj59pGFAtfitGoH2JeUpfffvQKdhMDLSvSVgb0nYHS8lOuvL4LwOdL8Cm0YiIQbgNEEEpHOE9eYpIL8A/pumH1Ijqvzix59tENGCQWIn/6yCP8YibtAoJ%2BxVNsUIcOAQdW0Gj8iGegnzokNd6aZKBqQoKHpmMACUQOPvHKFkLNRsCfAxgEPnfyKEtMShZdEfkgIqFLV8BZ8XPlNm0QkAUsaWDIb0naEhYzkyWVLDAUUH39ihGgvnmUOGErsxhmyCYTFCxIpR0h0Qkxlgm9ra1sefAjaGZSKjm8Cop8emJij2EwM6hksI4SGEaFLVThTfMDn0005XCghNw/wr1GME9NDmFjAYfzzVracioNPKLnBCCYhNDusPP8qwAKqRQEg7AZQPdxgqJd02P9HgCHQhFBcIAUIz/jCLpjhhYeggBnrT2PRBNV4DURPKiKyDojkymIm4iUFxHwcIwatXLuCPiwBcjmlw6bqF3C7dRIuVnD8rFwzDxd4eSXZyClz8Jpdwm6AACllxvg5c/mAWLgmQWjJFc4yNgfNBKCFD6Rzcs7cHpFGLzgxQwpo/aBdzfDhhLAp4RUDYEsAPB6AswfLlaz24jA2QBALQMuAJAlBS0QraMFd2yD2iDIjo5kbMn1YGt8i2ecPK0LtY1gzRKQAIkVHDEgB4ekIAMUGPxCEgjITeY7DEB4BGQcx%2BqIATp3YwbkMx9AKaDmLzFfACxGBIsWwBLGk58i5YysdoWuF9Eaxv3DMBmJ4BNj%2BxuY7HvmMDHtiQxXYksb2MRLaABxv7VKrWLLaEEMxDwccS6GjAtjsgbY4McWOUCljlA241wBWKXGgAgRg4jvuuPXKbjVQAAFh3Esg9xU41sTOKPGdiTx3Yl8ReL7G7ibxq40UsOJ0AZiqsr45cZONCbTjCxc438UZEgkASrxK4ocdd0fEpBWo2YicfuMPEdj5xygVqChKrGFp0JdYzCW6CgnXi8JX4giYhOUBUSSJE46sXeLy7xwQo%2BaacMsL9ZhiJxkY6MXCFjG0iXRlgS8aHhTEUT0xqoLMe%2BGbEfiDxdEhCfQG7GJjSJ5aQ1Nt0eFSSRxqoRsThKAm0T4Jx4lSUZEYCoTgJmkxthuOkkpAxxBkt8TBMW5wTZxJk7sZePUl9ErJ2kmybpJSDbiHJ0Eoya5J/GmSzxgExyfqm8n3iCU9Y58dRPfGwTPxxk0Kd2IeARToJUUytFpJilQw4pKQSCYFJokKT8JyktKRlOvFZSjU1kh8bZOwlyTcJJUpSW5KMjpSLJVUnKWBOUAZiqJRUxKc5OSkhSzJ5U9qYWminsTIyPOY0X6ImjWBRQlkUDpaNaI2jEwIwcaHNOnBCTtyU0F0W6OsAej6A0wH0TqhmnTgAAGiqEVC1hlAfEoCZGPWnzStptQOMaJMTESTc8qYjcmyGsDThnAfUpyTGgJgXTlQV0oyKHjLHMSgJbWcabqKmknS/cqwX6dOHGgrAbpFk%2B6RtKemUxE8ok8ye9LFI6SdAuAUvglIBmQhWWP0lGcNOOwVS0JbEjCTWC1aRoLgsk8MPJKSnZAKZyMlYIRPMmeT2snUhmRmDWAxkMw/0/cVzKpn5ERp/M8ib5J0BMzzgrdfSQ1MMkKTJZPM5QE%2BL/G0zgJcssOqSz7w2AB0HIX2saDFDaAeEQsToAsUZCWFbCcTXwGoGeBZB9AvgbEeIHjDxArgCcaMdGFKmEhwIaTeQX7JAABy2A0YBsSHAKJmAtGkIUOeHMjmqgHg0c9oGYHgYkMOJKMRkMTKFq%2BAEgFKDaT7OSAPTPOGs6MLnIgT88HImcyMtnJFxsREoagBmBPjApkByYkaYuf4BvjdE0sWpG2exkZBCh4gzzX3DWDjDoBHZNTEGbWC7k5RS50Yc6ZdNrD%2Byfp1gZnDATAAyBNQW8kOCHQXkgAl5M81eb9I3nvQZABAXeS03xSQxGQKwK8EFwjDoQMwnsmcGdOnlXTYo/YAEDyFvki5pYDMbKWBWx5ZAn2qgLoVoEwBGRRAo8vgJxAfy6oQxf8x5pG1bpGR0C5QfOd0SyD4k7QAIamEQDQJtRNgLsv0SGJQWBhW6acyGAfPLnk1g5HfbILQqRkoyK5pfVObHOIBRAvgzCymSsGjAiz/gwADhRnJvnexGQmYV5iuG8DtIC5s0%2BaY83gZzyDwPc7wA/F4XcyBFz868ccJrmFEYWBspCGQRkAT8mAsgKrDIHIARyZAlgSxegFkBY5%2BAtI0QBICdBkh6Alix3jYpMUT8twIAKrJYDMBPi3QiwN0G6EagLBPRAATiqyxLmAsgJ8ZYtaD%2BKDW1i2xeQHsUyBLFsnA1l4tsUT84AsAFABgBwD4BiAZASgNQDoAVjWAHANAIIEEAiBxAkgaQDICeJghKQXwSMHGF5A9p4yqwP0VkBIDUxm5hIYZfgzIDGoPmygT1EQqcoEA1A6BGgj7L3wtcCWcIc0YLGHBqKnAJkGiPmlA5wgNl104vKXn9HKhxQBMfSCkGTDKBGQwk/gPGMsCWAQoRy80cXi7AzhawEoCUGxFrHJB7l20kSfqx4BGLlAgkuvByGuQpg9lgoA5QsTeUnL48IwI%2BVdNuV3KRcDynGQmNeXHLI8yKxGXwvRWArnpwKmYGCtLmK5xwUK46XbIHCTLnmE7SVm3M5H3MllTs7AAsqWXMk%2BRRAFZYoTWXdT18yoIUJqCEkyFasUAYvD3iES7T3Rno2YAZ1WWa5ox1gcVSsElVChhVoq9VS3keWvTnlSqgVSqrNHXSoAEK6lYKDsD1RVVuqo1UCUFWUrYxEALVQWR1V8AJVL0hMYquLKbBS53CSlZCqtX1QnV25JVcbMSymyzoCglYCyxIa2yEyNhXwJpO6l6Tnm9QVNf5KSwMx4gS5YYjkXyh%2BhlFCsU5Y1FDBsgLluAK5bWBSBwgMxUhGQrISmhQt9AXosQJThRSNiLx%2Bi1RqUEsCtqVJHa0oOeJPFVDso0Y4IECArWXLpw1y5tROqnWVrq1KQWnCwmnVVrZ1NautaqAbVyEOEna9taRU7Xlie1szCAIOqPXDqT1YihODnJJlyLS5xa0dB8tDCUqNZcIXACkGsB8A/lO0/QM8ueVbyANKkolKXMnWgQNZU0MDUCEg29q31LCjUJ%2Bu/V/LjpAKhuU3JbmRoWVHc0gMotUV9yRSA85BcPIApjyMwE8qecvOUUlyNp4G3AKiuulFQt5O8tpT02g2gQGNU0LeZfNY11yCUd8h%2BSMFqCiydAr886R/OulHhv54uajYhXxWlhX1mM99RqpSAVqUgEoKaBerppniF67G9UAhqg20aYNBmuDUpoQ0fqv1P6sUlwng18K3in6tTRKFQ3bQJFUi4yDIqnn%2Bq/ySigvr3N8BQA9NsGqmLZu5n2bVNqoCUPVAlHOjeoBihOFGV4ImL4lMgCxVYtkDpLMljigQI8pcUtKGojeTxelp8XkB0CgUA6lBGS2JLyAySgJWlu8UZLZA2SkALkqK2FFyAfip8U%2BLMAPBLAboSwFVkWA8B6AboJ8fQAeBugalsgB4JYrSV2LGt5APJUlsKUIB4AEAYpTE2dk%2BAKAVAAYoODUUHljArQN0LMHIBeAHekaWThAH0BFbyAp1YwPkxkAeLyAbQW0ACFrDZSbtOADcBwB8CfalJhQWTvVrPAYF4grSp7VQTMX1avoyS7xaYvYCcAGl/AZgAYFk6QAJ%2BYwDsYDuCC1gsgwQVoAkB/D6BslzSqQAwFMXmKZtN2zJXNO0jKBgA%2BERiWYB4BmBGxZQQkAvAgBlKXK%2BW8yTUj21baed9ULLYIEK2w6J%2BpWnAAeQq0daolZgKrENqCbjaoliwRqIsEsBPiqslWpJSkrq0Zb5tOShba1vIDLa1taADbftsqW7bNtB1Q7cdoNZnb64l267fVru2mBZAT2l7c%2B3e1GpPtA4eHb9vq2EB4JAOm7cDuwp7NHtliiHTduh1G7alCOpxUjr0D6BUdFWjHSGKx047ci%2BOpAITuJ2uLpARI5Laltm0NaZANOunQzrdBM6WdpQOGE0Hqic7CA3OskJeL53W7IoreoXYjr4Ci78l4u6NOVvJ0yAqtNW1JVTv13NbDdYu9rSAB4DV7GoT4sSc8rdAPBGoVWJ8TwEG1uhkt023XXNqyXT78lxuxAKbqK4eBLdTAJALJ0YCkBr9c%2B4fSXon0yAAxDYPYKKFp307bw1e5nazvr0Lx8gWQCvV/sZ2/6697O9oH3uK1%2BKt9ZgfrfPtG3q7Go6uh4MEsm0j7Kd9WzJU1pa0z7IdPATA3rsP2La2tE%2BX0IHKfFAA%3D%3D%3D) is how GodBolt compares the CMSIS and CPPReg versions. Looking at the assembly, it's pretty darn close! +[This](https://godbolt.org/#z:OYLghAFBqd5TKALEBjA9gEwKYFFMCWALugE4A0BIEAViAIzkA2AhgHaioCkATAEK8%2B5AM7oArqVTYQAcgD0csGADUqAA5rS2YMqYEARqRakAngDouABgCCcgFR2r15XeUABAGYEm2ZX//qmtoAtCxMTGZITi7uLGJESGT%2BygByBBiswsoAwqxiAG7YemzKEGyoeYXFbsLYbJgmbNhmGAC2AJTRrm4YaiakBMBIRDnofQNDIzyW9JbB0/QAHMoAynUNTaOkambK1uHKE8NZWrWkhZgWNi5yTnc8AMwE5UxiOMpcD9mowkSEbERPrh7k8Xm9fJ9skQTGpsAB9IhGYjCIEg54VcEfL4eMTlIgEdBsMKomy8UEY96QvStZEk6xk9GvSlfIhiNQ%2BOlOBSqDRaYBwgAi2C8TWEkTRHnqwpyAAUZQAlXAAcTh2TlipVAtwADEAJIpXArOEACRBOBFvjVCuVqvVNq1eoNRtNNiJrWwwjULCkPKCOi4AHYBNd/GJhM8dNZMJhTsIEViBcpfpgQCAxM8iGpEQjPsHnKHwxxlAB1AiYBLxz6J5Op9MAxY5h555JhiPKADyHg8tSIlYe1b%2BtYzDcBTei/iI2Fa7JYk6xUJhdRY7uUABU6clfqQxKgRtDYXDWixhABrD5B8fJPwYNi/bAAD00SaIs/SqkJvzXynyYTEEP7z4piAbBiO6AyoHC1K0l864PLgqZHveECdGOIZ%2BIGAq5ncAaYaSjzrAQHjoaSNjctYqBSMIwgyugeioOYUR4U8krmrK1oqtY2TZIaKwyu2AAyurZAAmiaZrCs8lp2hxXE8XxgkiWJrrLh6Xo%2BoEfLns2E5TjOc6QvuS4rgAssZurtgi5DKIZbq%2BKuVmrsoR6nlZnbdtgvYjOgXY9hu/hbjuIzytoBB3qQwUsJgWmXleN53o%2BpDPq%2BqDvreIz6OgtHKKFCIDPkBBhAmMVXv4EDOWeVZVtZi6HseJ6QrB8EgD%2BrzYO0Hw8AAbLwnWlN57kjJVAGWGIKHaSVk7Tqw%2BksoutnKAAqgm37oGWfklc8xS%2BL8yVflokUQMVJWpZ%2BpnmTmXVOTS6Bwjg%2BVSOQR0TXNKmAamS76D4cKEZCSg5YiBD5WEVkLY4cGpoZy0geEWakE9x0IyV7VsOgD5SFm0VoYjWisqQJQ7fiEGoMeo7ZI1UCtNdt3YPdEKXeV7WonByj9T2Y3wxhWFY8kk16f%2BC6wvNS1Vfkq2YOtV6bZJSWE3t2AHfDyRxSMZ0WYC9NU3d6TYI93PHTZr01iAH1fT9Xz/XlBVMCDYNNZDVXQ0wsOK4jrvI6j97o4NF56yVOMSPjL6E3CxO/A1QJlZrNPa%2BzvvnphqH5uhOFc0n1m6dN/MGyZZlq1Z2d2Q5Tl1a5PkefGrMeRLAW7sowXAKFk6kMWAz6T7adKx%2Bk4JTLb7K8oGVZRbgNW0VcfJGVdVFQBhm1ae4fg81v5tR13WXRAleDf2VUjbHHc6VNs5Zy9K7CwBotrXB8NS5sBNvhfUUAO6t9gh3j/4qsXb1lMEtTtO6/vEqjkWp/gAa7PwBc3rGyJJ9eEZtsh/TjADIG1tFq2whouKGYgYaIhduA8B7s0bYAxoGcaiMf43S1j6Kqd8iYkwXrgN%2BgDEaR1/lQumvUAB%2BDNzzZFKBAEB/NIQszLkQRm9M6qdHfn4PeCNOaJwRrzTO85IFn0TA/CWyQb7bSDvfMWyhn7EFfng5Qn91bfyjv/ExwDl5gPAZAo2Js4EeEhMPFBNsgQYNhFgnBcNpH4MRoQz2xDvZkIRhQv%2B2tlqCNTnIlOCj/DyLIUoo%2BKiT6%2BDMfndJa4i7lVLgNCuoii4xKvljGuQUQphRbkY7IXd2ChPhsrB8T5aEnXSplJg2UkGW0KpVfxk9TzT0TLPcqDDUyCPEWvXqG9RFDOULvWJ%2BsM6pIMtktRK1L7Ajjto3uKUH4GJfkw/BZiepXTYdHB6JiHGDmgSwWB30XFfEQblEewM0GeJAPbACjtnb%2BICcdIJXtMbMOSBE9hy1aEh3oTBCOJiJ5gouRw5Q3DJG8P4YI%2BcwjN6TOLqeKRIL/CyOOkk%2BGKSZoCyMr4dZGjSnMJ2a0/ZhjJxHPAScjW5yrH%2BOuUBJxDzXHdNeag0GHyvmJh%2Bbgv5/yZHKBRkQkh7d8EItptE5eiySokqxhqtO5TDjy0wHCQkTATDAsUcs8lkDMnVUFq9eyX48kdlEYUgamj/D0t0SlRy%2B1MAQH7myixHKY4yo9kC0hJj/Z4zrpUpuEVxZfEtba%2B1m8PletYZQxFRL1XxLIVqzciJAq6sinCJlvgQAFv1Ya41oa45kuPtanO50iBZLrYXO1JcHUFK8qIl1fg3W7UZYcv1Zy02coJVKhG/cbGtUBSEk14D66N2wM3F%2BkJ41WUTV2xexbU2RIet%2BZeGarw5qWYfc12TLWQNtY5e1bkexOp7MU1VtKEa9tlv2oxEBB1KsDbK4J8qwnHXnVUl%2BtS0r1JXbnSyOTcUnispvKyJStmjuUKmLdX6pAHuSEeiaZra2UtMRBxtVq8OXug927KbAtq7I2VFHsH6COnLQ21eGP6Q0KrnVGxd1TJwgZ2gCcDDaHJrrbSNIT88n3gJQ4cxjGHElZtJThtJzb8MCaI/NEjozxMbQo9LBl%2BiKjy1IHRhtDHLEx2Y8GmdVakOAablx7APGXx8bjQRwT0GrIieRRpxD%2BDJPvuk2qw9cnq0KdWUp892T1N1TIy%2BvRZZrLoGAMAHwRm1YmYDeh8zcqGn%2BMYxC91UKw4wrghTUz6GPgAFZcDQZk8nBO2agvarzbXYtBqKOVrY9hk9uH5rhaU5Fly7bb2dudZpyW2nb7uuowc99n7Ss6zhWOzuaUvwTKDVl2drsbOceXc5lTtqRlRaK01QR7mxAfK3QtvwjGrJQAxZCLFoicUM0u4t17r2avxwCzzELs0wsudUza3Jbab3l2G/elbj7vPHRi3s/RW7ZvpZXixyzHXEZbaXTUupTnsgvdXURue9UjvjNsfMsQN2BHL0xV8ERA0nuSJe4tsjyRfPMv8wkzNdWYpas5kxAiREPgkVsHINcSIiBikYvSR4hEpREStBqOEq55TWF1KuZ04kLRsXl4r5XqulLWFsp6b0vgNLaA2%2BnLr85SzliQPGFYBAABe2Bq5NYqQ3MKq5FwBZrVTqrOr0ce9hJCRYZ3makOUK2IsoqoF1iICOXMn32fm75j75825a7%2B8918egnUQ9VbDxHnQUejYx%2Bz42PgCfkk/Zx8zP3HHSAB6d18B4PBc9aXD4WQvmCaE3Jj83svFfsK4Ulw8PnxF6SkWF%2B2QopAPBMHQI/cUTFpesTlzadsAA1XA8ptT8XbMWPXZJzTS1XyqDfW%2Bd9771wbtSxveSm6s9fo35Gm5EiYFkKz32Lf3bjlbisIxix2LPRKYZ6B5fDFgiqYInakrZIgGN7ZDgGLyQxQSAiaqjY6qoBIDYCoAngGrT6z7z5m4tgd66rCDYJbxD6KLZJGwZjaBGBMAhxY6kyDyoJ3ZfBVTIEQGgH1ac6kgpy8FD5kij4C7j5C6mJ1SL7D7L7Sgn5wjGTWArAADSB%2BjwR%2BmwMhchihV%2BKkhu6kd%2B/oqO3uoWeGxkdUjYUO14XczSiUJhp48YR4J48I5UPqXcJYZYf%2BBibhSA06f68M4aJQj8nhcylgWI2ol2I0DOiMIAl2kKocpMNhOBo4jCERpQ9hjhh22Q8RZhEAv%2BNuRAEAAR1uygwQyg9A7QjMbB1OpRaK9Al2B6WGSeyiRhPWphiRMUTSPcmRIwqRcIwgSAhEk4%2BqTh/cOR8YBRCQgBb2i2/cIOnkNObMa2v62WzCfhuyBWcRLREc3RGmGRGxxWYxXhVOfC2KAW3OfBw%2BQhdwE%2BqwSAkU8%2B6%2By8EhDILE0h0kcIKwxo1gAoe%2B6%2B1g/EC0uAyhDwqhUk7EbxHxXxxYPxfxAJLo%2Bu2hN%2BvomkH%2BB8yeTRr06OVkzBi0tQKwNxmA8%2BQIqe%2BauJtxj8yGUCHgYQtQCIXeF4DWn%2BqJv2eG6OzuaeIwJJ%2BJj8kIGJ1k24jeVWpaRsea8I9sqOuau0kC6OXi20eJ8%2BcIJS3BXuVekpdeEsKpbuTc0p1xpJ3Jde%2BcfJHyvRpJ8plOfSzCUpIApwVcicPO5x9QhEY%2BXIwuxki6wA2AdmjxUuzxsurxxkW%2BSouAxY8oKuMJ6ux%2Bvp/pgZwZq4oZyk7oOht%2BfoZuhhbB1aMBep0BwBdeWpeS8MMxd6HkExPM6ZGpi6WpMSqBVWFQx4WQLppAbpdmCIU0ZuagYgn06QURccBeA8x4IpXeM8JZC6pA0pAWmggMR8nZzCkKNZi6eRSgFpRpnJxOrURZjOPAPAYEbp02c4oUQaIwLAP43gdyPgygHgSQi5BBGKfIQ5vAPAH27RLSk2/c%2BgvZNJ3icI3oqAoE2CR8%2BqrBFB4Ct2ppFRRxj2q81WX2AQlhPcrSz5r5kMDBrQ%2BgkkgxU8VUGm/6fgdZDZL8TZ7IyE0U9J/grZ7ZqAk5z642Oiu02F7puFRAzZqRBFyOf6uquMJQoaWaA%2BccNFjZ9F%2BFvqrptFRieFTAPU5RiYOAPgk4kFWFglvFU0pyYwi6s4ZAVYzhy2PFdFClXU4lygklHkjemFpiclWl7IilsIRgJAcM/YH6JlwlfFolXUYly0%2Bl0lieyQml9lzZSlllqlNlnlk4Ilulrlhl8MAVIpU0tl9ZQlgVDlPUzlVUIVMl5GlG%2By%2BJTQBF/c8Vl0zFSx%2BC6pQ5qYCOw6USZpY6FppAj8h4U4cIagq0AIi6yEyVyQ6OdmDmYGqZSGxZWZpZw5IAmSL2BVYU0pq5rsiFyFTQqFLkL2ImL2H5FE35mcf5qqkqb252Umc2H29RDJjRnV%2BV2S2oo1V4L51JkMTQVVUBXKEWy04VIl3%2BXV/gGJL2EA41KFBOaK2oCEkiR1CMs1q1pQ81X5rQP5AxJprU4FnCn1IAPCgYfCUA51YNf4hxygUN2Kq8yRkx%2BCUNz2/1mNiSo2mGBNrqlFmZeGjiMCpsjyOO/SNBeMVJqYGBWBOB6AeBc%2BXJe1UqC5DuOsMq2AF1JOEA2NaFV8zMqNj2GNr2yaHoZBy5f47QP1/g64uN/ynBTuTlTlccARCQmVLh2VvUuVhBx0KxRsrQLNr8q4X1DhyEW1RFtWSpX%2BHNQBzJGZaZPVhVnymCoylZbRmQtZdlbcZCJFdE5Fx03ZJ1fZ3iVUQ1mpHtXBMUY5P4k4IdJUD5iUsFLh4db5vgr1k1716Fh2gdbZwdjS0Fj51F/tvgjFcFp1kB%2B6CxrGRlyQKx4VFOU6yV21H8FdUVOFRietTkj83hKBzCpagNi1v5iNr8rQC%2Bo9wNS1E9jMdJPBzCLdAl0VdmCVAESV7lnda9y6l0PlKl1lAo6lp0FdG9ElRQBlyV4V5lylVlalN96tnUwVl9blRlOyaVhIr87UWVT99dKOjdE4g5w1/V9G7KJV1C28/1FVVV7orQtV9VTcTV29JUrVO21ND1ECwDMdA1/1mdhkCtJUOd2AU1MGM1Z2ytxKm6G1iOVkM9INJD897dttV4KZFK80oRRNPalFxlu9vdXwPJxDpDH1X1YmVWWtEu%2BCJ96U8FtdU66NOVFmPh/i05VEs5EA1BcYwgKk91eNlBSmUNXoWgAIcI15YUhDb2LJlDa1i8l1mD4Ct5XgRQUUu5KMIwHgpA6ArQ1kmBSYr0ZjTc5GTkglRae9d5zV/ghjtE6QJgEMCmxaujUq%2BDi4FjyQyTsIqTkTojZD/1Ytzq1jjOxW9Dc9J2e6bdKDV4fhL2JtZtLKr2N9AjepANbQE1jD5UIj0N9OXDASltr8xT49EyEtyQNtS9yQCdE58MqjZwc5YAC5spj8st82BTHUG5gl25vgrj6A%2B5h5rAsCp5558zZTSNATi6t595pd1hXd7UI9n5Y9oNgiEAu8hFozx0qdvDPdzK1dEdvg%2BQ1zyg/T9zy8AiC9AgLDaTsj75tzs9Azj6ipNpZxgh9p/Olxoh6OnpzEMumuNoGouoKwMZ8ogJwJWLKoOLeLW%2BWh8ZCJJu%2BhleDtGDCMUYMYHoSCkawAjLsYR1IxruORR10di6DeupwAORqtkaPY9x4NO894lgR1WJC0OJhzVUlJb%2BTu3tZSLurLQ5htfg3ZUefL9eme2Q9cwriBmeRl3ZZi0StEr4J5hkyVbz6dy27LzL8YmdkUTLVEy09cTrVEdrFzVGwxnh8Y4Yjunr2gxrRl9rT5LhkMVp5BorHk4rf4yV3ZF5ZJVUHJBJjTvVIM8rOpItRlrSg6lV1V8DdVtNBFyJrsKxdgEAWgtNQQvYsR/GasrgysEcrr0YsYZRzDLzJUDrp0YDvUnjJbCD5bILYaHkAcLgtb2A9bOMaxkIvqBGrbXc7br5brXbIzyVbDkCnD5hY2lGhbZ9TJHDqYRjdQvYJzFAKN2TZGm58IW6/cu75ZddBtlb2Mk7eMuOx77Dr0hjxgF7pjTTQtYjL2vTUArdSN921OeT8xpyIHJ43bFTHdECVeVyB1FjkMdj%2B1fWN1Fdd1jtASz7IA57JjV7mTfgCHFHN7IAcGL2FZ9jejWI%2B7hNLHxNh77qpN805Nx5ziiTrstNr%2BwgDNmB2BuBi6%2BB7N9LUqwbPNpTgt2TzHhJsHHk%2BKTHASUtpBTARAizFjStjHKtJrgeT98M97oT76g9WrlTn7gcQEpthQEAFtnTVtSHRlKHqxM5pAeRRrgRSgO8ZOQzt5qhbYLAGrYURGIiHhhRI0XSe5ygYQbNJDZzJxLDbD8M3rLLMo3oJ4fAvZR1xeGYfeIwWX2BfAJgk4dujuXONe6r6OJXFUYpBYbYcDH5pARgJgfYA4QExg7XkIos003gOiQEMeI4Vk9XZXFX3NTMEbfr/bIwGX8YakOB4dy043vZvraUVh/rLhBXAIRXSY3N30bAcI%2Bg5XHoq32XE32AlXoVccrSLXPXLAHX5i/zD3bXT3KXvbDRKyhHyQC3xXl3eXkzPehXPA8Y43Z3N31X%2B7er9XkIa3tQY3l3kPU3i8b37XX88MdX2X8PgPiPygEPk3VXi8I7j3laUDzCNbE7c75cTbv37GvVcPXwCPPNhP13qPTU6PT3CIK7aUL2Ec2P2BuPpXeXBPyPRP/JZ72XJ3vZanAK9tjJ0nTt80gvOTzCXLrLPLwPw3oP8YMxuobAcPqrjWbJYv2BJD6OyGMULJWbQ59XUvYnK3ggg2HkBv9XMQiwVkPn1uhJ77RBbYmdSJAENvSvaOde9vJH0vTv/ALvRAbv2XHvXvYbnhQzDj%2BbwPEp2Sgf2gRVg7hwsDNVZbDVhm47/iKxqvqYpP73JgXA5WfA%2BvhvOP5WX3mGYL/kUby2kC2foAoDxml0w7LXRfSDpfSG5f4f2XlfXPNfdfDfcPzfPbyVUz6jEAs/CfzvEA3vCQygwuweZRVOAFkxFfIAsnR3J3Z3wg1H6q65S3JDuqvVsXZtM%2BbNbYCQvgS3yXie9RO76SZgv/rLKIaBdVvVwN44B7wbYP3iiV2rZAjYJ/EYCkDIw6t%2BywyKgjclZDsh4Ql9d0NjhSBWQhSbIDkFmzFC/8mYdsU1vJjpYwDDucAhAcQT5Dv4BySmPAegLhCYCL2kIHAVAjQEEDDW2gIgRYBFqkC46mqBrLaURaEBkWgubkNqAIDON0WUhH0qCVJb4s9QuAfiAKEJYSQ1CrxJQefl1CqD1BsJR/LoSTLvs0urtPDLl1qBPUf8gbEYNIOcZa844%2BZOwTIKYCYAZivLbJOREojURom9EaHjFB1T2C3BVnbsqR0vZ15lolg7ADbzNbEFdW2ScIUB16ojkKm5rAjMtEgRJCr2ufYzGkOIJ1U6I5PRMN4OZY0QihG3eKGXVlgBtrcoxQIlVGCGYBw2JdTbjBQ76fhnBcxDyMtCaEzFKh3caoX3Gjae1haiYbor0X6JtN0itrPYp4Uv7qd1OxxCppG12jPkOkygG4lowVYU98E2Q7Msf3maLNt2ypORkm26boFROzNVmgQQgEp1ZuHQ9pFlFOBkEx49jQTvTTQBXDxOT/TNqHzHT7CUhx/bmgsL8DYc3sAyCqAIO6FiJU%2BktReC8O07HDkObfbhhx0z7eIU0lnO4dZzYrKBChMTOJhbi9TNtIMBDNzDCNhT/VAR7tAfoX0QaNU5eiw5kQEi3YVNv%2BuHKOpnjY5oidMk2DRJrUORPsUBPKCmnxyeRgAthPReZg5BFaDM44b7RriVAJH0QiRyeBJrtjzhEZRMMGSkcVhew0iQGxbQfgyJL7UcGOLIy0VeDZFGUORxGTIdyOvg8NdMa0QUe%2BmFGMCbkvKeBFKNTayijOPzfdJlkWJWcWqdedekySbQ8110I2HkVeBZyvxDRMdVNqmFTYT14MQYipmMz8GxNPk8TdBr1h5oHYxMFKD5KU3CL6jqRAHMjgcONH0ix21HJMWWUOGklUx8zCenCKtF40bR5AxXlhxJwXpLWmyJ0eiMJhcdDYXosUXynp4lQlAvo%2BZiYj1omJGaYnR/pJz66Q5UwiIxtNYk7HqoAx8MLdNiKVFXgVRuY73BqIyL/ZyRMY8HAhjqYBImxfVOsaW1NFNVlmXYsdD2OCx0t%2BxK5AHCuEcgiwxY0WZ0Zx3MHcdJxvHacf8OOjzidS/iJcf4hXHXCJObNDca1E05kE9Oe4w9AeLdHMpjxgDPwFukGYoiW%2B7HPkX2n0S0YiJJiM8WqMzgmJfImoskSk1IzFYnxW4gvq%2BLHbfi6UYE6iXFn0zGAmKSjPKuAgYl5iusy4nwMYFJGEYbxh2RhFxMtI8TR2xfa2gvwqYw4psJARLMljon%2BIpJNaK5AliSxwFCxOoiOKpJfEaTh%2B/EiiqOLfBYkcotE/%2Bso1H42dSgTQrcXqgrbbwAIkIpTszGxSOTocgk2WK5LjAiSS%2BHkiSVW28mC1XBQELEUEVGjaSC2%2BWTznkVUmycQpiYfYqCMSTrknGIQ/YrF1YDRVEoCQdgPiOrEjAr2B3KruuQ%2BxL8vOEAPKdzQKlRct%2BzvOjss1vKbwOo5eCqbuSqlukapNxEoOELv6atZOH/LKclA/JqMOpTQnIsoD87DQAug09csFyLChcmhEXbyL1KQCk5YubjeLuEHnxJdWpn3VOKIPwhItHSNgHVEqBlDmQzcb0j6RZFyBhhAmpaalqmFV6QhLA94bUDYEsAPB6AswKyAABZW8HFJeoEPVYCgCAWgXcASBKCAy9CqYerhb1VJfB3p50P6eY2UDB53MvvE8d2Q%2BkpBgi6EACEDJABNDIQaMjGfiEJBWQW8p2KyEzK9Tmc3KwIfIW2Fpn0B8aiYJmSzK%2BBsysCHMtgFzLJzKBuZiJHPpaT1QCz%2BSybYgrTJ4DiyVZPfKWdkBlmYzOZSsxWQjN5m4y1ZhaDUULLiEiz9QDwPWZLJSmsz0ZssrGQrKsg55LZfoPyTbJ2x2yucIgtVqb1XDmSTyOMv2SAHxmYAQ%2BxM36a8DJkUySiVM%2B2UWFpnBEqoLs5xg1Ajk816AisjzEzJawVppu8MGmfqDFnZyrZhs8OQZILmKzC5vsvkAmNaxGpy5XZbWfqF1k1zo5dc/OVZGblmyW5qs0uW1k7nMJK5KQJ2X3NbnMzXZMEQeSUUVkPBFZJc3CmXPT5dy2wwUM4BcGWg5y3BechuVZDXnwz15Vs/mVvKDnCDkZIc6wDqgWjWB5QQE1HE/JfmrhVQScgGfrOBnj8heXwMGRDOsBQz6A0wBWWnO5yhz80q4AABp6htQ7YckkzNjkh9n5r87%2Bf9MXRWQU5lgKBTvKLAChrAq4ZwHPNVl1yEFuoJBbgqLkxAeAo8nvuPI7nby040Ck3sSVIWrgFoKwFBVbLQWEzsgGCr%2BaTKbi0Kh5iM6mcQVwBijD5tcxedkDxYkKeFEi9zIwv9n6pbZWs3eR6EXQXAs5jM%2BRbnK%2BBKLuFKwL2SUXUXWzy0E81hQjG7JrB7SRYchQbIUWmKVFK8s%2BVYv5laLhZRYPeXopIbVzDF/ctxVwo8UWzlAcM7xerJvn3T4WyMmwPsiFCm1bQCobQAIjFidBUc3IEwg4R8Zv9ngWQfQL4DqniBMw8QK4GnATmphjZcshCCE0vE1KQAdSrGXjKrkRxSi8MMwBI0hDNLWlhIdpTPM6XtAzA6Vb%2Bg9KxjcgZFvHApYtE/lVLkgwi1MO4pWCpgZlsCVMR5GQZ5gYo3IfiJlDUAsxp8%2BzLQNPkWX%2BBH4fRZLMKWyVGVuQMoeIPF1TxtgMw6AOZYgvbAXKSoyykAPAs%2BW1KSF1gBMb9BkDGgwAMgCOB9l%2BX/LqF7YQFaQpBVPIZABACFVCsmXMJuQKwF8F5yTAEQiw5StcHApRpwrUok4AEGKHhi/LVlDS6KhrMhDUrwlaykABsp8BDz0V/iHpcQCiBfBGVyi5lY4v%2BDAB2VxWUZeMp2UosEY3IYsCwGIDWRvAnSV/vMtfmxdxl3yq8FcsG4QA%2BVZilZfip75uTtle/JGZKuOjch65FkuZQnPVXJBmlFqnwLSrdL0qiZP01MPaukAxz9Q0rVOaKpMRcqEgfS11X8vzlDKHgIqxhGKq/oSq75g%2BJwDIHlpMBZA5WGQOQDYCyBLAKa9ALIBxz8BneogCQNQkeD0AU1OnGQBmrKLkATwIAcrJYDMBwyAwiwAMAGE6gLBoZAATnKydrmAsgOGSmtaDVrpWaastZmtkAprhO0rUteWvIBwBYAKADADgHwDEAyAlAagHQAYWsAOAaAQQIIBEDiBJA0gSFVLjBDMhoBfwDMOKFpROlVgLuLICQGLhHLCQd6uBmQGNRnlEo8sDAviMXQEA1AmBOglUsPyaDs6cIT6f12tYqtrAhkViDqnfZwgQNyCkbvGAFC6hFQZMcyPAKbDb9hc0QkafMilb4KsYcGz6YhpGCrh2wSoJUPxDtnJBuQOG53mDJmCD5lACchXIuCFCPI8wUG6UDBtRxEaENw4eMLCqQXx4sNygOjTHwY0Ea04fG8PAJvZJMqRNtG3srhoY01F%2BCyqr%2BQ3nY0YrclU4F9fF07bMtTlcyq5Yujf6ztf1ylN/AdyIAAaVCQGgnlvl1AyhjQcIPgPISqxQBe8YPMRMAshnQzZg%2BKQDRrgTnWA3NHm0oDKCc0ubwtKwPPBJvw2WBLAQW%2BzSFp%2Bn8IWNWm6UHYHaihbYtuAFLUCQc3CK3NymiAFFuDIxb3NcWlTfhsC1hlNgwi/hCVqy1EQctGm0rbUCC1JL9EKSm6BkRWC4smqOS50iwHyUVoCeVc%2BLvUEm0zz4sLMeIK2RGASNoMEYdVf3BLydQkNKG3AGhvbApA4QtM2QvIQULLRHm%2BgGGWIGRoQAxZrgO8gvThqWALthc67U7Lu2udioCc4IECGQ2obVw6Gs7V9p%2B07a9tKQCGr9t23/b9th2/UMdsUIPbSgL26DnDVu1KzjVAYFHVduR2lA3taOveHsuFysrfASq4RetpcIkaOtqyuELgBSDWA%2BAVG5aKppDxkJhF32uCKsuWis6gQHO2GpTqZXU7ad9O2%2BSIRo3C4DlYwY5YulOU0xF06qzVTcr5J3L4YDyp5aFy3CvKAQ7ypVZ8ptX%2BAudcEITcgqqgQrwVkKipvrtwCG7loEK1FWbt2VxwsVOKkYLUCcU6BCV8CklUgrJUXtKVccDbXJr538q3iNO5DSkCVDLQkdIFZQA8GSoW6edAEOPUyrRQlaqdNOunQzt50p7%2BdcWlIKHqVAYqpVwuGVXKvxAHASdn81VV/V10kTrlvgKAInv5XgUs9QenPXnvahbTEwTzE1YLkL1rh85Vqn6dXuY0/S2dlu8jZRrzwAQgdBu8fRnox2I6sdUe5LWihu2L7q8fCB4HUQRY4R413amQMmtTXpqR1MgHNQIBj75r91HUZvCWqP0VrMCkUMsshD329ryA/amtYfuHXkAs1MgMdSAAnW375aVauGXDLMAPBLAAYSwOVkWA8B6AAYOGfQAeABh11sgB4CmqHUZqv9o68gJOt30zqEA8ACAHOq8ZqBBuFAKgM4WnCkGQAxgVoMAE6hgHyAXgbToumE4QB9AR%2B8gBNWMCxMZAxa8gG0CwFEB2wbWDgzgCPAcAHVn%2BwgOzMBgegODD4LAvEAPV8GaCiaz/QDH7XDqE17ATgNuv4DMADAwnSAPLTGByzhOMgYIMmCrDcBc1/AGGUUXbBZBggrQBIKBH0Bjq91UgBgAmqTVoGOD3%2Bl%2BcZGUDAAKIygTqKAbMDBEIAxQMQPeHagQBF1VlK/YwFGCUGfAiUMkFUVP2CAb9Wh%2BWvfpwDDkn9QBttWYHKwwH1yiBttYsE6iLBLAcM8rM/r7UDqP9GB7/b/v/1aHp1iAQg2gGIOkGV1FBkg%2BkeoOkBaD9B6VkwabisH2Dn%2Brg6YFkB8GBDF7YQ0alENTgdDkhjA9IY9mFBzDGBhQ1%2BSTq8GU1qhjgxodv3MAdDW62w0ID0D6AjDT%2B0w1jPMOWG/g1hvQ3wHsPBBHDRRFw0gDcMeGC10gO8nvoP3oHj9gR4I6EfCMPBIjpQGI3EdKCJGkgZIBhakeGNS60T7UbI/wFyPlr8jeqR/T4ZkAv639g6/w1gfHXYGADlakADwADBmAeA5WNtQGHKxwzm89amYIsEWDRK1DqB1o8fvxO4GejKAcQR4EGNMAkAwnRgKQGlP0mST4JykzIDRldg9g8oIIyEZSiwn4T0R54LEfaj5AsgUJrU2EYiNRHET7QYUxWqrU8BFgdah4NDMbUNGG1vJuGcgdJN%2BHP97RkQH/ppN5G99PAL020awM4GK10%2BcMIMrhlAA) is how GodBolt compares the CMSIS and CPPReg versions. Looking at the assembly, it's pretty darn close, with no performance diffirence (only minor instruction re-ordering). ![Assembly Comparison](Assembly_Comparison.PNG)