Главная
Study mode:
on
1
Introduction
2
Problem Space
3
Indirect Calls
4
State Initialization
5
GCC IFUNK
6
iPhone Approach
7
Load Time Function Selection
8
Building Blocks
9
OS Capabilities
10
Binary Metadata
11
Binary Decision Diagram BDD
12
Other Building Blocks
13
Ordered Set of Criteria
14
How qualifiers work
15
Examples
16
Qualifiers
17
Ordered Map
18
Combine
19
Syntax
20
OS Support
21
Tool Chain Details
22
Compiler Modifications
23
Expressions
24
Const Expert
25
Dispatch Attributed Functions
26
Symbol Table
27
LTFS Map
28
Linker
29
Arm64 Direct Calls
30
Topological Bdd
31
Relocation Type
32
Thunk Page
33
Fixups
34
Thunks
35
HyperV Containers
36
Demo
37
Performance
38
Performance on Intel
39
Performance on ARM
40
Control Flowguard
Description:
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only! Grab it Explore a comprehensive conference talk from CppCon 2022 on C++ Function Multiversioning in Windows, presented by Joe Bialek and Pranav Kant. Delve into the challenges of writing efficient code for diverse machine types and learn about a feature that combines compiler and OS facilities to enable no-overhead selection of optimal function implementations. Discover how this approach allows for extremely fine-grained function specialization based on CPU architecture, model, and supported features without the overhead of indirect calls or jump tables. Follow the speakers as they walk through the feature's implementation in Visual C++ and Windows 11, comparing it to existing solutions like gcc function multiversioning. Gain insights into the implementation details that compilers and operating systems must consider, and witness a live demonstration of the feature in action.

C++ Function Multiversioning in Windows - Load-time Implementation Selection - Lecture

CppCon
Add to list
0:00 / 0:00