Landing: 65f27f5a1562

Project / Subsystem

gcc / i386

Date

2026-09-22

Author

Kyrylo Tkachov

Commit

65f27f5a1562300f72b0fe8cfd65e7901f528763

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
i386
patch_id
—
commit_hash
65f27f5a1562300f72b0fe8cfd65e7901f528763
source_type
github
headline
Prevent duplicate ENDBR instructions in GCC's CET pass
tldr
GCC's Control-flow Enforcement Technology (CET) pass now avoids inserting redundant ENDBR instructions.
author
Kyrylo Tkachov
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • i386
  • • security
  • • cet
discussion_id_link
—
bugzilla_pr
—
date
2026-09-22T00:00:00.000Z

This commit addresses an issue in GCC’s Control-flow Enforcement Technology (CET) pass where duplicate ENDBR (End Branch) instructions were being inserted. This occurred when different switch tables pointed to the same case block, or when dispatches shared a table. The fix ensures that an ENDBR is reused if one already exists after the destination label, preventing unnecessary instructions and potential overhead.