Skip to content

cores/esp8266/core_esp8266_features.cpp: Make precache() cleaner and more efficient #8903

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Apr 5, 2023

Conversation

jjsuwa-sys3175
Copy link
Contributor

@jjsuwa-sys3175 jjsuwa-sys3175 commented Apr 3, 2023

No need to issue a MEMW instrunction per load from each cache line. Only once after the last load is sufficient.

MEMW ensures that all previous load, store, acquire, release, prefetch,
and cache instructions perform before performing any subsequent load,
store, acquire, release, prefetch, or cache instructions.
-- MEMW (Memory Wait), 6. Instruction Descriptions, Xtensa ISA Reference Manual (p.409)

…more efficient

No need to issue a MEMW instrunction per load from each cache line.
Only once after the last load is sufficient.

  MEMW ensures that all previous load, store, acquire, release, prefetch,
  and cache instructions perform before performing any subsequent load,
  store, acquire, release, prefetch, or cache instructions.

    -- MEMW (Memory Wait), 6. Instruction Descriptions,
                                      Xtensa ISA Reference Manual (p.409)
@jjsuwa-sys3175 jjsuwa-sys3175 changed the title cores/esp8266/core_esp8266_features.cpp: Make precache() cleaner and … cores/esp8266/core_esp8266_features.cpp: Make precache() cleaner and more efficient Apr 3, 2023
@mcspr mcspr merged commit 65579d2 into esp8266:master Apr 5, 2023
@jjsuwa-sys3175 jjsuwa-sys3175 deleted the precache_update branch April 6, 2023 02:58
hasenradball pushed a commit to hasenradball/Arduino that referenced this pull request Nov 18, 2024
No need to issue a MEMW instrunction per load from each cache line.
Only once after the last load is sufficient.

  MEMW ensures that all previous load, store, acquire, release, prefetch,
  and cache instructions perform before performing any subsequent load,
  store, acquire, release, prefetch, or cache instructions.

    -- MEMW (Memory Wait), 6. Instruction Descriptions,
                                      Xtensa ISA Reference Manual (p.409)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants