From 72051eea910c1bf6cb8ad3b8a624d2a9b08fed5d Mon Sep 17 00:00:00 2001 From: "Dirk O. Kaar" Date: Fri, 28 Aug 2020 18:26:56 +0200 Subject: [PATCH 1/3] Inline, fewer LOC, remove redundant definition in cpp. --- cores/esp8266/Esp.cpp | 7 ------- cores/esp8266/Esp.h | 6 +++--- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/cores/esp8266/Esp.cpp b/cores/esp8266/Esp.cpp index 1b4d3ee43..e3dae810a 100644 --- a/cores/esp8266/Esp.cpp +++ b/cores/esp8266/Esp.cpp @@ -264,13 +264,6 @@ uint8_t EspClass::getBootMode(void) return system_get_boot_mode(); } -#ifndef F_CPU -uint8_t EspClass::getCpuFreqMHz(void) -{ - return system_get_cpu_freq(); -} -#endif - uint32_t EspClass::getFlashChipId(void) { static uint32_t flash_chip_id = 0; diff --git a/cores/esp8266/Esp.h b/cores/esp8266/Esp.h index 77086890b..89ef413cd 100644 --- a/cores/esp8266/Esp.h +++ b/cores/esp8266/Esp.h @@ -123,12 +123,12 @@ class EspClass { #if defined(F_CPU) || defined(CORE_MOCK) constexpr uint8_t getCpuFreqMHz() const +#else + uint8_t getCpuFreqMHz() const +#endif { return esp_get_cpu_freq_mhz(); } -#else - uint8_t getCpuFreqMHz() const; -#endif uint32_t getFlashChipId(); uint8_t getFlashChipVendorId(); From 400632f81808e87aec3bde2eedd1b1d0b2320f26 Mon Sep 17 00:00:00 2001 From: "Dirk O. Kaar" Date: Sat, 29 Aug 2020 00:32:19 +0200 Subject: [PATCH 2/3] Even more concise #if form. --- cores/esp8266/Esp.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cores/esp8266/Esp.h b/cores/esp8266/Esp.h index 89ef413cd..7a920a3e1 100644 --- a/cores/esp8266/Esp.h +++ b/cores/esp8266/Esp.h @@ -122,10 +122,9 @@ class EspClass { uint8_t getBootMode(); #if defined(F_CPU) || defined(CORE_MOCK) - constexpr uint8_t getCpuFreqMHz() const -#else - uint8_t getCpuFreqMHz() const + constexpr #endif + uint8_t getCpuFreqMHz() const { return esp_get_cpu_freq_mhz(); } From c74dcc924cb621e3f81803941f55b3140888b08e Mon Sep 17 00:00:00 2001 From: "Dirk O. Kaar" Date: Mon, 31 Aug 2020 15:56:46 +0200 Subject: [PATCH 3/3] Force gcc inlining, use same style for getCycleCount as for getCpuFreqMHz. --- cores/esp8266/Esp.h | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/cores/esp8266/Esp.h b/cores/esp8266/Esp.h index 7a920a3e1..c321db382 100644 --- a/cores/esp8266/Esp.h +++ b/cores/esp8266/Esp.h @@ -124,7 +124,7 @@ class EspClass { #if defined(F_CPU) || defined(CORE_MOCK) constexpr #endif - uint8_t getCpuFreqMHz() const + inline uint8_t getCpuFreqMHz() const __attribute__((always_inline)) { return esp_get_cpu_freq_mhz(); } @@ -166,21 +166,15 @@ class EspClass { uint8_t *random(uint8_t *resultArray, const size_t outputSizeBytes) const; uint32_t random() const; -#ifndef CORE_MOCK - inline uint32_t getCycleCount() __attribute__((always_inline)); +#if !defined(CORE_MOCK) + inline uint32_t getCycleCount() __attribute__((always_inline)) + { + return esp_get_cycle_count(); + } #else uint32_t getCycleCount(); -#endif -}; - -#ifndef CORE_MOCK - -uint32_t EspClass::getCycleCount() -{ - return esp_get_cycle_count(); -} - #endif // !defined(CORE_MOCK) +}; extern EspClass ESP;