You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/instructions/jit.instructions.md
-1Lines changed: 0 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,4 +7,3 @@ applyTo: "src/coreclr/jit/**"
7
7
## Code Review Guidelines
8
8
9
9
-**Do not routinely request new targeted tests for pure refactors, mechanical cleanups, or other non-behavioral JIT codebase improvements.** JIT changes alter global codegen and are often validated by existing end-to-end suites and differential testing, so additional per-PR regression tests may not be needed for changes that do not affect observable behavior. However, targeted tests are appropriate and should be encouraged for bug fixes, changes with a clear repro, observable behavior changes, and previously untested edge cases that are not already covered by existing tests.
10
-
-**Do not request that new JIT-EE (JIT-VM) interface methods be added at a specific position or in a particular ordering.** New JIT-EE methods can be added anywhere in the interface with any ordering without issues, so do not ask for them to be placed at the end, near similar signatures, or in any other particular location.
Insert the new API definition without removing any existing entries, placing it near similar signatures.
30
+
Insert the new API definition without removing any existing entries. The position and ordering of the new entry does not matter, so place it wherever is convenient (e.g. near similar signatures).
(or `<repo_root>/src/coreclr/tools/Common/JitInterface/ThunkGenerator/gen.bat` on Windows) to update auto-generated files.
34
34
Use the correct directory for the script to run.
35
35
36
-
3. Open `<repo_root>/src/coreclr/inc/corinfo.h` and add the new API inside `class ICorStaticInfo` classas the last member. Example:
36
+
3. Open `<repo_root>/src/coreclr/inc/corinfo.h` and add the new API inside `class ICorStaticInfo` class. The position and ordering of the new method does not matter; adding it as the last member is fine. Example:
37
37
38
38
```diff
39
39
+ virtual CORINFO_METHOD_HANDLE getUnboxedEntry(
@@ -42,7 +42,7 @@ Use the correct directory for the script to run.
42
42
+ ) = 0;
43
43
```
44
44
45
-
4. Open `<repo_root>/src/coreclr/tools/Common/JitInterface/CorInfoImpl.cs` and add the new API in the end of `class CorInfoImpl` class declaration. Use `<repo_root>/src/coreclr/tools/Common/JitInterface/CorInfoImpl_generated.cs` to inspect how type parameters look like for C# for the newly added API since it is expected to be auto-generated there by the gen.sh(bat) script. Example:
45
+
4. Open `<repo_root>/src/coreclr/tools/Common/JitInterface/CorInfoImpl.cs` and add the new API to `class CorInfoImpl` class declaration. The position and ordering of the new method does not matter; adding it at the end is fine. Use `<repo_root>/src/coreclr/tools/Common/JitInterface/CorInfoImpl_generated.cs` to inspect how type parameters look like for C# for the newly added API since it is expected to be auto-generated there by the gen.sh(bat) script. Example:
@@ -55,7 +55,7 @@ Use the correct directory for the script to run.
55
55
56
56
Implement the API if asked, leave the NotImplementedException() otherwise.
57
57
58
-
5. Open `<repo_root>/src/coreclr/vm/jitinterface.cpp` and add a dummy implementationat the file's end. Example:
58
+
5. Open `<repo_root>/src/coreclr/vm/jitinterface.cpp` and add a dummy implementation. The position and ordering of the new method does not matter; adding it at the file's end is fine. Example:
59
59
60
60
```diff
61
61
+CORINFO_METHOD_HANDLE CEEInfo::getUnboxedEntry(
@@ -106,10 +106,10 @@ Add a new entry to the `LWM` list. Example:
106
106
```
107
107
108
108
NOTE: Use upper-case for the first letter of the API name here.
109
-
Add the new record after the very last LWM one.
109
+
The position and ordering of the new record does not matter; adding it after the last LWM one is fine.
Define 3 methods in this header file inside `class MethodContext` class (at the end of its definition).
112
+
Define 3 methods in this header file inside `class MethodContext` class. The position and ordering of the new methods does not matter; adding them at the end of its definition is fine.
113
113
114
114
The methods are prefixed with `rec*` (record), `dmp*` (dump to console) and `rep*` (replay). Example
115
115
@@ -125,7 +125,7 @@ Now add a new element to `enum mcPackets` enum in the same file. Example:
Add the implementation of the 3 methods to `methodcontext.cpp`at the end of it.
128
+
Add the implementation of the 3 methods to `methodcontext.cpp`. The position and ordering of the new methods does not matter; adding them at the end of it is fine.
129
129
Consider other similar methods in the file for reference. Do not change implementations of other methods in the file. Example:
0 commit comments