mirror of
https://github.com/espressif/esp-idf
synced 2025-03-10 01:29:21 -04:00
fix(esp_rom): fixed float to int conversion functions not working on P4
This commit is contained in:
parent
83571fc6a0
commit
bb6bb82350
@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2023 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@ -16,15 +16,21 @@
|
||||
/***************************************
|
||||
Group rvfplibdf
|
||||
***************************************/
|
||||
/*
|
||||
* These functions cannot work when compiling with floating point ABI
|
||||
* implementation assumes argument is passed in a0, but floats will be passed
|
||||
* in the floating point registers instead
|
||||
*
|
||||
* __fixsfdi = 0x4fc00878;
|
||||
* __fixunssfdi = 0x4fc00880;
|
||||
*/
|
||||
|
||||
/* Functions */
|
||||
__adddf3 = 0x4fc00868;
|
||||
__eqdf2 = 0x4fc0086c;
|
||||
__fixdfdi = 0x4fc00870;
|
||||
__fixdfsi = 0x4fc00874;
|
||||
__fixsfdi = 0x4fc00878;
|
||||
__fixunsdfsi = 0x4fc0087c;
|
||||
__fixunssfdi = 0x4fc00880;
|
||||
__floatdidf = 0x4fc00884;
|
||||
__floatsidf = 0x4fc00888;
|
||||
__floatundidf = 0x4fc0088c;
|
||||
@ -41,6 +47,10 @@ __subdf3 = 0x4fc008ac;
|
||||
Group libgcc
|
||||
***************************************/
|
||||
|
||||
/* Not part of the orginal ROM interface, but RVFP versions cannot work with float-abi */
|
||||
__fixsfdi = 0x4fc007ac;
|
||||
__fixunssfdi = 0x4fc007b4;
|
||||
|
||||
/* Functions */
|
||||
__absvdi2 = 0x4fc0073c;
|
||||
__absvsi2 = 0x4fc00740;
|
||||
|
@ -9,6 +9,3 @@ components/esp_rom/test_apps/rom_tests:
|
||||
- if: IDF_TARGET in ["esp32", "esp32c2"]
|
||||
temporary: false
|
||||
reason: lack of memory for testing miniz compressing
|
||||
- if: IDF_TARGET == "esp32p4"
|
||||
temporary: true
|
||||
reason: test not pass, should be re-enable # TODO: IDF-8977
|
||||
|
@ -10,6 +10,7 @@ from pytest_embedded import Dut
|
||||
@pytest.mark.esp32s3
|
||||
@pytest.mark.esp32c6
|
||||
@pytest.mark.esp32h2
|
||||
@pytest.mark.esp32p4
|
||||
@pytest.mark.generic
|
||||
def test_esp_rom(dut: Dut) -> None:
|
||||
dut.run_all_single_board_cases()
|
||||
|
Loading…
x
Reference in New Issue
Block a user