[PR #10779] [MERGED] Vectorize TextColor::GetColor #28225

Open
opened 2026-01-31 09:27:08 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/10779
Author: @lhecker
Created: 7/24/2021
Status: Merged
Merged: 8/2/2021
Merged by: @undefined

Base: mainHead: dev/lhecker/vectorize-text-color


📝 Commits (1)

  • 4f96a19 Vectorize TextColor::GetColor

📊 Changes

13 files changed (+154 additions, -129 deletions)

View changed files

📝 .github/actions/spelling/expect/expect.txt (+6 -0)
📝 src/buffer/out/TextAttribute.cpp (+1 -1)
📝 src/buffer/out/TextAttribute.hpp (+1 -1)
📝 src/buffer/out/TextColor.cpp (+60 -6)
📝 src/buffer/out/TextColor.h (+1 -6)
📝 src/buffer/out/lib/bufferout.vcxproj (+1 -1)
📝 src/buffer/out/ut_textbuffer/TextAttributeTests.cpp (+31 -40)
📝 src/buffer/out/ut_textbuffer/TextColorTests.cpp (+33 -50)
📝 src/cascadia/TerminalCore/terminalrenderdata.cpp (+6 -5)
📝 src/host/consoleInformation.cpp (+6 -5)
📝 src/host/settings.cpp (+0 -10)
📝 src/host/settings.hpp (+6 -2)
📝 src/host/telemetry.cpp (+2 -2)

📄 Description

I was watching a video about vectorized instructions and I wanted to
try out some new things, as I had never written AVX code before.
This commit is the result of this tiny Thursday morning detour into
AVX land. It improves performance of TextColor::GetColor by about 3x.

Validation Steps Performed

  • Default colors are still properly shifted +8 ✔️

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/10779 **Author:** [@lhecker](https://github.com/lhecker) **Created:** 7/24/2021 **Status:** ✅ Merged **Merged:** 8/2/2021 **Merged by:** [@undefined](undefined) **Base:** `main` ← **Head:** `dev/lhecker/vectorize-text-color` --- ### 📝 Commits (1) - [`4f96a19`](https://github.com/microsoft/terminal/commit/4f96a19ad7a687aa54e7d2a3e67d7a70c810afb1) Vectorize TextColor::GetColor ### 📊 Changes **13 files changed** (+154 additions, -129 deletions) <details> <summary>View changed files</summary> 📝 `.github/actions/spelling/expect/expect.txt` (+6 -0) 📝 `src/buffer/out/TextAttribute.cpp` (+1 -1) 📝 `src/buffer/out/TextAttribute.hpp` (+1 -1) 📝 `src/buffer/out/TextColor.cpp` (+60 -6) 📝 `src/buffer/out/TextColor.h` (+1 -6) 📝 `src/buffer/out/lib/bufferout.vcxproj` (+1 -1) 📝 `src/buffer/out/ut_textbuffer/TextAttributeTests.cpp` (+31 -40) 📝 `src/buffer/out/ut_textbuffer/TextColorTests.cpp` (+33 -50) 📝 `src/cascadia/TerminalCore/terminalrenderdata.cpp` (+6 -5) 📝 `src/host/consoleInformation.cpp` (+6 -5) 📝 `src/host/settings.cpp` (+0 -10) 📝 `src/host/settings.hpp` (+6 -2) 📝 `src/host/telemetry.cpp` (+2 -2) </details> ### 📄 Description I was watching a video about vectorized instructions and I wanted to try out some new things, as I had never written AVX code before. This commit is the result of this tiny Thursday morning detour into AVX land. It improves performance of `TextColor::GetColor` by about 3x. ## Validation Steps Performed * Default colors are still properly shifted +8 ✔️ --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:27:08 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#28225