This is an archive of the discontinued LLVM Phabricator instance.

[libc] Non-temporal memory function support
AbandonedPublic

Authored by gchatelet on May 17 2022, 5:40 AM.

Details

Reviewers
None
Summary

Enhanced version of the framework to support non-temporal loads and stores.

Diff Detail

Event Timeline

gchatelet created this revision.May 17 2022, 5:40 AM
Herald added projects: Restricted Project, Restricted Project. · View Herald TranscriptMay 17 2022, 5:40 AM
gchatelet requested review of this revision.May 17 2022, 5:40 AM
gchatelet updated this revision to Diff 430011.May 17 2022, 5:46 AM
  • Fix documentation for address.h
tschuett added inline comments.May 17 2022, 10:08 AM
libc/src/string/memory_utils/address.h
33 ↗(On Diff #430011)

Is enum class or prefix cuter?

gchatelet updated this revision to Diff 430298.May 18 2022, 2:31 AM
  • Use enum class for Temporal and Aligned attributes
gchatelet marked an inline comment as done.May 18 2022, 2:32 AM
gchatelet added inline comments.
libc/src/string/memory_utils/address.h
33 ↗(On Diff #430011)

Done, thx for the suggestion.

gchatelet updated this revision to Diff 430606.May 19 2022, 2:11 AM
gchatelet marked an inline comment as done.
  • rebase
gchatelet updated this revision to Diff 430618.May 19 2022, 2:52 AM
  • rebase and squash
gchatelet updated this revision to Diff 430652.May 19 2022, 6:26 AM
  • fix type mismatch for inline_memset
gchatelet updated this revision to Diff 431676.May 24 2022, 7:44 AM
  • Add more alignement tests
  • Factor some code in address
gchatelet updated this revision to Diff 433040.May 31 2022, 2:33 AM
  • Use a more principled approach to common alignment
gchatelet updated this revision to Diff 433314.Jun 1 2022, 1:28 AM
  • Simplify gcd in address
gchatelet updated this revision to Diff 433329.EditedJun 1 2022, 2:20 AM
  • Update patch after submission of D125966
Matt added a subscriber: Matt.Jun 13 2022, 12:59 PM
gchatelet updated this revision to Diff 437116.Jun 15 2022, 5:27 AM
  • Rename ScalarBackend
gchatelet updated this revision to Diff 438969.Jun 22 2022, 4:18 AM

rebase and address comments

gchatelet updated this revision to Diff 440543.Jun 28 2022, 2:28 AM

remove unrelated change

gchatelet abandoned this revision.Nov 16 2022, 2:44 AM

This work was based on llvm libc framework v2 that was too complicated.