Skip to content

Commit 98c9e9c

Browse files
committed
Use setDefaultShallowSuspenseContext instead of passing 0
GCC doesn't optimize this case. Saves us a couple of bytes and is shorter.
1 parent edc20da commit 98c9e9c

File tree

2 files changed

+12
-24
lines changed

2 files changed

+12
-24
lines changed

packages/react-reconciler/src/ReactFiberBeginWork.js

+6-22
Original file line numberDiff line numberDiff line change
@@ -109,11 +109,10 @@ import {
109109
suspenseStackCursor,
110110
pushSuspenseContext,
111111
popSuspenseContext,
112-
DefaultShallowSuspenseContext,
113112
InvisibleParentSuspenseContext,
114113
ForceSuspenseFallback,
115114
hasSuspenseContext,
116-
setShallowSuspenseContext,
115+
setDefaultShallowSuspenseContext,
117116
addSubtreeSuspenseContext,
118117
} from './ReactFiberSuspenseContext';
119118
import {
@@ -1458,10 +1457,7 @@ function updateSuspenseComponent(
14581457
}
14591458
}
14601459

1461-
suspenseContext = setShallowSuspenseContext(
1462-
suspenseContext,
1463-
DefaultShallowSuspenseContext,
1464-
);
1460+
suspenseContext = setDefaultShallowSuspenseContext(suspenseContext);
14651461

14661462
pushSuspenseContext(workInProgress, suspenseContext);
14671463

@@ -1778,10 +1774,7 @@ function updateDehydratedSuspenseComponent(
17781774
) {
17791775
pushSuspenseContext(
17801776
workInProgress,
1781-
setShallowSuspenseContext(
1782-
suspenseStackCursor.current,
1783-
DefaultShallowSuspenseContext,
1784-
),
1777+
setDefaultShallowSuspenseContext(suspenseStackCursor.current),
17851778
);
17861779
const suspenseInstance = (workInProgress.stateNode: SuspenseInstance);
17871780
if (current === null) {
@@ -2188,10 +2181,7 @@ function beginWork(
21882181
} else {
21892182
pushSuspenseContext(
21902183
workInProgress,
2191-
setShallowSuspenseContext(
2192-
suspenseStackCursor.current,
2193-
DefaultShallowSuspenseContext,
2194-
),
2184+
setDefaultShallowSuspenseContext(suspenseStackCursor.current),
21952185
);
21962186
// The primary children do not have pending work with sufficient
21972187
// priority. Bailout.
@@ -2211,10 +2201,7 @@ function beginWork(
22112201
} else {
22122202
pushSuspenseContext(
22132203
workInProgress,
2214-
setShallowSuspenseContext(
2215-
suspenseStackCursor.current,
2216-
DefaultShallowSuspenseContext,
2217-
),
2204+
setDefaultShallowSuspenseContext(suspenseStackCursor.current),
22182205
);
22192206
}
22202207
break;
@@ -2223,10 +2210,7 @@ function beginWork(
22232210
if (enableSuspenseServerRenderer) {
22242211
pushSuspenseContext(
22252212
workInProgress,
2226-
setShallowSuspenseContext(
2227-
suspenseStackCursor.current,
2228-
DefaultShallowSuspenseContext,
2229-
),
2213+
setDefaultShallowSuspenseContext(suspenseStackCursor.current),
22302214
);
22312215
// We know that this component will suspend again because if it has
22322216
// been unsuspended it has committed as a regular Suspense component.

packages/react-reconciler/src/ReactFiberSuspenseContext.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -36,8 +36,6 @@ export const InvisibleParentSuspenseContext: SubtreeSuspenseContext = 0b01;
3636

3737
// Shallow Flags:
3838

39-
export const DefaultShallowSuspenseContext: ShallowSuspenseContext = 0b00;
40-
4139
// ForceSuspenseFallback can be used by SuspenseList to force newly added
4240
// items into their fallback state during one of the render passes.
4341
export const ForceSuspenseFallback: ShallowSuspenseContext = 0b10;
@@ -53,6 +51,12 @@ export function hasSuspenseContext(
5351
return (parentContext & flag) !== 0;
5452
}
5553

54+
export function setDefaultShallowSuspenseContext(
55+
parentContext: SuspenseContext,
56+
): SuspenseContext {
57+
return parentContext & SubtreeSuspenseContextMask;
58+
}
59+
5660
export function setShallowSuspenseContext(
5761
parentContext: SuspenseContext,
5862
shallowContext: ShallowSuspenseContext,

0 commit comments

Comments
 (0)