From 518704855e2d72e34cbee0bd829e7b9c35ff04ef Mon Sep 17 00:00:00 2001 From: Scott Mabin Date: Fri, 8 Mar 2024 14:54:04 +0000 Subject: [PATCH] use ROM memcpy over compiler builtins ROM --- esp-hal/ld/esp32/rom-functions.x | 5 +++++ esp-hal/ld/esp32c2/rom-functions.x | 5 +++++ esp-hal/ld/esp32c3/rom-functions.x | 5 +++++ esp-hal/ld/esp32c6/rom-functions.x | 5 +++++ esp-hal/ld/esp32h2/rom-functions.x | 5 +++++ esp-hal/ld/esp32p4/rom-functions.x | 5 +++++ esp-hal/ld/esp32s2/rom-functions.x | 5 +++++ esp-hal/ld/esp32s3/rom-functions.x | 5 +++++ 8 files changed, 40 insertions(+) diff --git a/esp-hal/ld/esp32/rom-functions.x b/esp-hal/ld/esp32/rom-functions.x index b21a2be2b7f..87d4f49d9c2 100644 --- a/esp-hal/ld/esp32/rom-functions.x +++ b/esp-hal/ld/esp32/rom-functions.x @@ -27,3 +27,8 @@ PROVIDE (esp_rom_crc8_le = 0x4005d0e0); PROVIDE (esp_rom_md5_init = 0x4005da7c); PROVIDE (esp_rom_md5_update = 0x4005da9c); PROVIDE (esp_rom_md5_final = 0x4005db1c); + +memcmp = 0x4000c260; +memcpy = 0x4000c2c8; +memmove = 0x4000c3c0; +memset = 0x4000c44c; diff --git a/esp-hal/ld/esp32c2/rom-functions.x b/esp-hal/ld/esp32c2/rom-functions.x index db797d42a00..3165a52667a 100644 --- a/esp-hal/ld/esp32c2/rom-functions.x +++ b/esp-hal/ld/esp32c2/rom-functions.x @@ -16,3 +16,8 @@ PROVIDE(esp_rom_crc8_le = 0x40000804); PROVIDE(esp_rom_mbedtls_md5_starts_ret = 0x40002be4); PROVIDE(esp_rom_mbedtls_md5_update_ret = 0x40002be8); PROVIDE(esp_rom_mbedtls_md5_finish_ret = 0x40002bec); + +memset = 0x40000488; +memcpy = 0x4000048c; +memmove = 0x40000490; +memcmp = 0x40000494; \ No newline at end of file diff --git a/esp-hal/ld/esp32c3/rom-functions.x b/esp-hal/ld/esp32c3/rom-functions.x index cd57ab6a754..1d205abc3f8 100644 --- a/esp-hal/ld/esp32c3/rom-functions.x +++ b/esp-hal/ld/esp32c3/rom-functions.x @@ -23,3 +23,8 @@ PROVIDE(esp_rom_crc8_le = 0x40000638); PROVIDE(esp_rom_md5_init = 0x40000614); PROVIDE(esp_rom_md5_update = 0x40000618); PROVIDE(esp_rom_md5_final = 0x4000061c); + +memset = 0x40000354; +memcpy = 0x40000358; +memmove = 0x4000035c; +memcmp = 0x40000360; \ No newline at end of file diff --git a/esp-hal/ld/esp32c6/rom-functions.x b/esp-hal/ld/esp32c6/rom-functions.x index 8184f36a489..bc628237e1c 100644 --- a/esp-hal/ld/esp32c6/rom-functions.x +++ b/esp-hal/ld/esp32c6/rom-functions.x @@ -23,3 +23,8 @@ PROVIDE(esp_rom_crc8_le = 0x40000760); PROVIDE(esp_rom_md5_init = 0x4000074c); PROVIDE(esp_rom_md5_update = 0x40000750); PROVIDE(esp_rom_md5_final = 0x40000754); + +memset = 0x400004a8; +memcpy = 0x400004ac; +memmove = 0x400004b0; +memcmp = 0x400004b4; diff --git a/esp-hal/ld/esp32h2/rom-functions.x b/esp-hal/ld/esp32h2/rom-functions.x index 3c9c5aec860..8318a51d24e 100644 --- a/esp-hal/ld/esp32h2/rom-functions.x +++ b/esp-hal/ld/esp32h2/rom-functions.x @@ -23,3 +23,8 @@ PROVIDE(esp_rom_crc8_le = 0x4000072c); PROVIDE(esp_rom_md5_init = 0x40000718); PROVIDE(esp_rom_md5_update = 0x4000071c); PROVIDE(esp_rom_md5_final = 0x40000720); + +memset = 0x400004a0; +memcpy = 0x400004a4; +memmove = 0x400004a8; +memcmp = 0x400004ac; \ No newline at end of file diff --git a/esp-hal/ld/esp32p4/rom-functions.x b/esp-hal/ld/esp32p4/rom-functions.x index 530978401e1..1d98cb9e07a 100644 --- a/esp-hal/ld/esp32p4/rom-functions.x +++ b/esp-hal/ld/esp32p4/rom-functions.x @@ -1,3 +1,8 @@ ets_update_cpu_frequency = 0x4fc00044; ets_printf = 0x4fc00024; PROVIDE(ets_delay_us = 0x4fc0003c); + +memset = 0x4fc00268; +memcpy = 0x4fc0026c; +memmove = 0x4fc00270; +memcmp = 0x4fc00274; \ No newline at end of file diff --git a/esp-hal/ld/esp32s2/rom-functions.x b/esp-hal/ld/esp32s2/rom-functions.x index 1c697c10eb3..f7f4e7fa0d2 100644 --- a/esp-hal/ld/esp32s2/rom-functions.x +++ b/esp-hal/ld/esp32s2/rom-functions.x @@ -27,3 +27,8 @@ PROVIDE(esp_rom_crc8_le = 0x40011a4c); PROVIDE(esp_rom_md5_final = 0x4000530c); PROVIDE(esp_rom_md5_init = 0x4000526c); PROVIDE(esp_rom_md5_update = 0x4000528c); + +memcmp = 0x4001ab40; +memcpy = 0x4001aba8; +memmove = 0x4001acb0; +memset = 0x4001ad3c; \ No newline at end of file diff --git a/esp-hal/ld/esp32s3/rom-functions.x b/esp-hal/ld/esp32s3/rom-functions.x index 08a4832baf3..299d4d626d6 100644 --- a/esp-hal/ld/esp32s3/rom-functions.x +++ b/esp-hal/ld/esp32s3/rom-functions.x @@ -34,3 +34,8 @@ PROVIDE(esp_rom_md5_final = 0x40001c74); PROVIDE (esp_rom_opiflash_exec_cmd = 0x400008b8); PROVIDE( esp_rom_spi_set_dtr_swap_mode = 0x4000093c ); PROVIDE( esp_rom_opiflash_pin_config = 0x40000894 ); + +memset = 0x400011e8; +memcpy = 0x400011f4; +memmove = 0x40001200; +memcmp = 0x4000120c; \ No newline at end of file