Open
Description
Describe the bug
Based on this macro-condition dsps_dotprod_f32
defaults to dsps_dotprod_f32_ae32
for ESP32-S3. However, (despite the fact that it compiles) it throws IllegalInstruction
-error in log, therefore it doesn't work. Unfortunately, I don't have an ESP32-S3 to verify this 100%, but as far as I understand this should be a wokwi issue.
To Reproduce
Just test this wokwi example here:
#include "esp_dsp.h"
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
Serial.println("Hello, ESP32-S3!");
float x[] = {1,2,3,4};
float y[] = {5,4,3,2};
float dest = 1;
dsps_dotprod_f32(x, y, &dest, 4); // FAILS (ASM)
// dsps_dotprod_f32_ae32(x, y, &dest, 4); // FAILS (ASM)
// dsps_dotprod_f32_ansi(x, y, &dest, 4); // WORKS (C-CODE)
Serial.println(dest);
}
void loop() {}
Expected behavior
Based on this example, dsps_dotprod_f32
should work just like the ...ansi
-version works without any error.
Environment (please complete the following information):
- OS: Arch Linux
- Browser: Ungoogled-chromium
- Version: -
Additional context
As said, unfortunately: I don't have an ESP32-S3 to verify this 100% (an order I had never came), but as far as I understand this should be a wokwi issue.