Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
88 commits
Select commit Hold shift + click to select a range
f5feaeb
Added regUpper32BitsZeroLookup
TIHan Dec 7, 2022
958a84f
Minor refactoring
TIHan Dec 7, 2022
755461e
Refactoring
TIHan Dec 7, 2022
95c7d09
Refactoring
TIHan Dec 7, 2022
12e3c4f
Refactoring
TIHan Dec 7, 2022
b42682c
Added comments, more refactoring
TIHan Dec 8, 2022
2d806a5
Added some logs
TIHan Dec 8, 2022
2d5e07f
Added some logs
TIHan Dec 8, 2022
4d06e05
Added some logs
TIHan Dec 8, 2022
0c1599a
Added some logs
TIHan Dec 8, 2022
53ecd41
Remove logs. Fixed an issue.
TIHan Dec 8, 2022
0f42667
Expanding peephole opt even more. Trying to improve tp.
TIHan Dec 8, 2022
2de6089
Some refactoring
TIHan Dec 8, 2022
bd3b211
Trying to make this safe
TIHan Dec 8, 2022
9792d0f
work
TIHan Dec 8, 2022
0ed30e9
more work
TIHan Dec 8, 2022
3e452fd
Fixing a few issues
TIHan Dec 8, 2022
126d6b5
Fixing a bug
TIHan Dec 9, 2022
80ac0d7
Switching to a list of instrs
TIHan Dec 9, 2022
9497d5e
Adding simple peephole API
TIHan Dec 10, 2022
4ee489b
minor change
TIHan Dec 10, 2022
7d599df
Trying to improve tp
TIHan Dec 11, 2022
11a1709
Trying to improve tp
TIHan Dec 11, 2022
e33147a
Fixed a minor issue
TIHan Dec 11, 2022
99cba5a
Small correctness issue
TIHan Dec 11, 2022
0356348
Minor change
TIHan Dec 11, 2022
2c10d21
Using emitCurIGinsCnt
TIHan Dec 12, 2022
189afe0
Added EMIT_MAX_IG_INS_COUNT
TIHan Dec 12, 2022
f0e626a
Formatting
TIHan Dec 12, 2022
f1e7c07
Feedback
TIHan Dec 12, 2022
ca8813a
Feedback
TIHan Dec 12, 2022
c533d54
Feedback
TIHan Dec 12, 2022
e0df38e
Minor change
TIHan Dec 12, 2022
1f5501a
More comments, minor change
TIHan Dec 12, 2022
e34367f
Get rid of these asserts
TIHan Dec 12, 2022
b2c0414
Improving TP even further
TIHan Dec 13, 2022
5431a53
Added CalculateChecksumTest
TIHan Jan 4, 2023
07ec7fb
Only allow GPR
TIHan Jan 4, 2023
7e0079f
Update src/coreclr/jit/emitxarch.cpp
TIHan Jan 6, 2023
0c71902
Feedback
TIHan Jan 7, 2023
25cb4fb
Feedback
TIHan Jan 7, 2023
7d6d03d
Merge remote-tracking branch 'upstream/main' into mov-elim-1
TIHan Jan 10, 2023
ee349d3
Updating last instructions when saving IG. Using 'min(emitCurIGinsCnt…
TIHan Jan 10, 2023
a2538ca
Added 'emitCurLastInsCnt'
TIHan Jan 10, 2023
6fb2694
Remove commented code
TIHan Jan 10, 2023
7e97320
Using 'emitCurLastInsCnt' for the ring buffer
TIHan Jan 10, 2023
896a32a
Formatting
TIHan Jan 11, 2023
49c3c07
Fix last instructions if the next IG is extended
TIHan Jan 11, 2023
f229bc0
Update emit.cpp
TIHan Jan 12, 2023
920fc7c
Update emit.cpp
TIHan Jan 12, 2023
7380971
Merged
TIHan Jan 17, 2023
a4e92c7
Fix build
TIHan Jan 17, 2023
fa4f6e5
Fix build
TIHan Jan 17, 2023
0fd25ca
Fix build
TIHan Jan 17, 2023
2ff99ed
Formatting
TIHan Jan 17, 2023
d2307d5
Fix assertion
TIHan Jan 18, 2023
f478d53
merging
TIHan Feb 9, 2023
0afbc01
Fixed minor issue
TIHan Feb 9, 2023
140fd11
Merging complete
TIHan Feb 9, 2023
423a72f
Fix build
TIHan Feb 9, 2023
c6c5711
Added canPeepholeCrossIGBoundaries
TIHan Feb 9, 2023
cab9705
Cleanup
TIHan Feb 9, 2023
987e50c
More cleanup
TIHan Feb 9, 2023
453e00b
More cleanup
TIHan Feb 9, 2023
710b039
More cleanup
TIHan Feb 9, 2023
cadbf4d
More cleanup
TIHan Feb 9, 2023
a68cd3f
More cleanup
TIHan Feb 9, 2023
26cb484
Fix build
TIHan Feb 9, 2023
a88103a
Add count back
TIHan Feb 9, 2023
5fe41e2
Formatting
TIHan Feb 9, 2023
c1b612f
Merge remote-tracking branch 'upstream/main' into mov-elim-1
TIHan Feb 14, 2023
9f42790
Merge branch 'main' into mov-elim-1
TIHan Feb 15, 2023
84f076c
Added back comments
TIHan Feb 15, 2023
12ea52f
Turn off backwards nav for arm
TIHan Feb 15, 2023
cb3b2e8
Added debug check for backward nav checks
TIHan Feb 15, 2023
a007c3b
Remove debug check
TIHan Feb 15, 2023
5e33fad
Merge remote-tracking branch 'upstream/main' into mov-elim-1
TIHan Feb 15, 2023
b35c10e
Feedback. Allow looking back at conditional ops.
TIHan Feb 22, 2023
7576c94
Update src/coreclr/jit/emit.h
TIHan Feb 22, 2023
6816216
Feedback
TIHan Feb 22, 2023
3a4adfb
Feedback
TIHan Feb 22, 2023
5a3acc5
Fix ordering
TIHan Feb 22, 2023
d48e429
Added regression test. div,idiv,mul,imul should be noted as write to …
TIHan Feb 22, 2023
90479c5
Added another regression test
TIHan Feb 22, 2023
f7224c2
Actually added the regression test
TIHan Feb 22, 2023
36ffb3a
Fix test
TIHan Feb 23, 2023
d1d7814
Merged
TIHan Feb 23, 2023
8162a38
Fix merge
TIHan Feb 23, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Some refactoring
  • Loading branch information
TIHan committed Dec 8, 2022
commit 2de6089e02e25069f12db7c8805b2f9e44674664
44 changes: 22 additions & 22 deletions src/coreclr/jit/emitxarch.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -480,19 +480,6 @@ void emitter::UpdateUpper32BitsZeroRegLookup()
// This is conservative. Just look for what seems to be common.
switch (id->idInsFmt())
{
case IF_LABEL:
case IF_RWR_LABEL:
case IF_SWR_LABEL:
case IF_METHOD:
case IF_METHPTR:
{
// If we were not able to get peephole info, we assume
// that looking at information from previous instructions is not safe.
// Therefore, we must reset the lookup.
upper32BitsZeroRegLookup = 0;
return;
}

case IF_RRD:
case IF_RWR:
case IF_RRW:
Expand Down Expand Up @@ -589,6 +576,19 @@ void emitter::UpdateUpper32BitsZeroRegLookup()
}
}

case IF_LABEL:
case IF_RWR_LABEL:
case IF_SWR_LABEL:
case IF_METHOD:
case IF_METHPTR:
{
// If we were not able to get peephole info, we assume
// that looking at information from previous instructions is not safe.
// Therefore, we must reset the lookup.
upper32BitsZeroRegLookup = 0;
return;
}

default:
{
return;
Expand Down Expand Up @@ -628,15 +628,6 @@ bool emitter::TryGetUpper32BitsInfoFromLastInstruction(regNumber* outDstReg, boo

switch (id->idInsFmt())
{
case IF_LABEL:
case IF_RWR_LABEL:
case IF_SWR_LABEL:
case IF_METHOD:
case IF_METHPTR:
{
return false;
}

case IF_RRD:
case IF_RWR:
case IF_RRW:
Expand Down Expand Up @@ -731,6 +722,15 @@ bool emitter::TryGetUpper32BitsInfoFromLastInstruction(regNumber* outDstReg, boo
return true;
}

case IF_LABEL:
case IF_RWR_LABEL:
case IF_SWR_LABEL:
case IF_METHOD:
case IF_METHPTR:
{
return false;
}

default:
{
*outDstReg = REG_NA;
Expand Down