Skip to content

Conversation

@atrick
Copy link
Contributor

@atrick atrick commented Nov 17, 2020

This pass was rewriting branches using the orignal branch target
instead of the new branch target. It used to not matter when the pass
was mannually splitting critical edges later. Now the splitting
is handled automatically.

Fixes rdar://71447520 (SILVerifier error after SimplifyCFG
"Instruction does not dominate all uses!")

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

This pass was rewriting branches using the orignal branch target
instead of the new branch target. It used to not matter when the pass
was mannually splitting critical edges later. Now the splitting
is handled automatically.

Fixes rdar://71447520 (SILVerifier error after SimplifyCFG
"Instruction does not dominate all uses!")
@atrick atrick requested a review from meg-gupta November 17, 2020 09:49
@atrick
Copy link
Contributor Author

atrick commented Nov 17, 2020

@swift-ci test

@atrick
Copy link
Contributor Author

atrick commented Nov 17, 2020

@swift-ci test source compatibility

@atrick
Copy link
Contributor Author

atrick commented Nov 17, 2020

@swift-ci benchmark

@swift-ci
Copy link
Contributor

Performance: -O

Regression OLD NEW DELTA RATIO
FlattenListLoop 1628 2503 +53.7% 0.65x (?)
FlattenListFlatMap 4931 6798 +37.9% 0.73x (?)
 
Improvement OLD NEW DELTA RATIO
NSStringConversion.UTF8 1020 917 -10.1% 1.11x (?)

Code size: -O

Performance: -Osize

Regression OLD NEW DELTA RATIO
FlattenListFlatMap 3887 4822 +24.1% 0.81x (?)
PrefixWhileAnySequenceLazy 1634 1913 +17.1% 0.85x (?)
 
Improvement OLD NEW DELTA RATIO
String.data.LargeUnicode 124 114 -8.1% 1.09x (?)
ObjectiveCBridgeFromNSDictionaryAnyObjectForced 9700 9050 -6.7% 1.07x (?)

Code size: -Osize

Performance: -Onone

Regression OLD NEW DELTA RATIO
DataAppendBytesMedium 6080 6880 +13.2% 0.88x (?)
UTF8Decode_InitFromBytes_ascii_as_ascii 490 550 +12.2% 0.89x (?)

Code size: -swiftlibs

How to read the data The tables contain differences in performance which are larger than 8% and differences in code size which are larger than 1%.

If you see any unexpected regressions, you should consider fixing the
regressions before you merge the PR.

Noise: Sometimes the performance results (not code size!) contain false
alarms. Unexpected regressions which are marked with '(?)' are probably noise.
If you see regressions which you cannot explain you can try to run the
benchmarks again. If regressions still show up, please consult with the
performance team (@eeckstein).

Hardware Overview
  Model Name: Mac Pro
  Model Identifier: MacPro6,1
  Processor Name: 12-Core Intel Xeon E5
  Processor Speed: 2.7 GHz
  Number of Processors: 1
  Total Number of Cores: 12
  L2 Cache (per Core): 256 KB
  L3 Cache: 30 MB
  Memory: 64 GB

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 71acf8d

@atrick atrick merged commit 0e6d4f7 into swiftlang:main Nov 17, 2020
@atrick atrick deleted the fix-simplify-cfg branch October 19, 2022 00:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants