Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanups/externalize internalize #583

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
18a7449
Remove useless externalize/internalize methods
guillep Apr 15, 2023
cc4a280
Clean internalCannotReturn:
guillep Apr 15, 2023
2b7bfe0
Clean quick primitive execution
guillep Apr 15, 2023
bb9c2cc
Remove duplicated code from method activation
guillep Apr 15, 2023
3ab390e
Remove duplicated code from method activations
guillep Apr 15, 2023
6a2a153
Cleanup find method in cache methods
guillep Apr 15, 2023
9721df6
Clean duplicated code for context access
guillep Apr 15, 2023
f48091b
Remove duplicated process primitives
guillep Apr 15, 2023
98044ed
Clean names
guillep Apr 15, 2023
8d8eeb3
rename framemethod=>iframemethod to make interpreter consistent with …
guillep Apr 15, 2023
664f66a
Remove noops from the simulation classes
guillep Apr 15, 2023
c895558
Remove obsolete bytecode
guillep Apr 15, 2023
98b5e12
Remove duplicated code for returns and lookups
guillep Apr 15, 2023
af50c8f
Remove old block closure leftovers
guillep Apr 16, 2023
2a0b50d
Removing duplicated bytecode and marriage
guillep Apr 16, 2023
d8f0e06
Recover wrongly removed methods
guillep Apr 16, 2023
7a8767a
Fix recursive call that prevented inlining
guillep Apr 16, 2023
a2ca57d
Fix CogMethod pool dictionaries
guillep Apr 16, 2023
cb67fcb
Remove old block type annotations
guillep Apr 16, 2023
6b715a5
Revert automatic categorisation
guillep Apr 16, 2023
72de65f
Add CogMethod auxiliary class
guillep Apr 16, 2023
8cd7bd1
Fix compilation error
guillep Apr 16, 2023
25f42e7
Do not pop in a pure interpreter VM
guillep Apr 17, 2023
ab6c36d
Add type annotation
guillep Apr 17, 2023
f76a43b
Fix assertion
guillep Apr 17, 2023
0912456
Remove old callback related methods
guillep May 2, 2023
08275f8
Fix test after moving code
guillep May 5, 2023
bf65f48
Update tests for latest Pharo 11 version
guillep May 5, 2023
22a807a
Fix test by reusing remapped variable
guillep May 5, 2023
d3bed61
Reintroduce (lost?) longAt* methods in stack access
guillep May 5, 2023
9414639
Reorder assertions after merging interpreter/compiler frame marriage
guillep May 5, 2023
1884fc5
Remove obsolete tests
guillep May 5, 2023
d2eee1c
Fix halt block evaluation
guillep May 5, 2023
39c392b
Reintroduce simulation specific methods
guillep May 5, 2023
41f7e68
Fix ARM32 tests
guillep May 5, 2023
a88b976
Recover temporary access
guillep May 5, 2023
4c687dd
Get the method header from cog method even if running interpreted
guillep May 5, 2023
5877380
Cleanups and recategorisations
guillep May 5, 2023
ce7e188
Add type declaration
guillep May 5, 2023
74583b4
Merge branch 'pharo-10' into cleanups/externalize-internalize
guillep May 9, 2023
b3575a3
Merge remote-tracking branch 'origin/pharo-10' into cleanups/external…
guillep May 10, 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
13 changes: 0 additions & 13 deletions extracted/vm/include/common/sqVirtualMachine.h
Original file line number Diff line number Diff line change
Expand Up @@ -247,19 +247,6 @@ typedef struct VirtualMachine {
#if VM_PROXY_MINOR > 7
/* New methods for proxy version 1.8 */

/* callbackEnter: Re-enter the interpreter loop for a callback.
Arguments:
callbackID: Pointer to a location receiving the callback ID
used in callbackLeave
Returns: True if successful, false otherwise */
sqInt (*callbackEnter)(sqInt *callbackID);

/* callbackLeave: Leave the interpreter from a previous callback
Arguments:
callbackID: The ID of the callback received from callbackEnter()
Returns: True if succcessful, false otherwise. */
sqInt (*callbackLeave)(sqInt callbackID);

/* addGCRoot: Add a variable location to the garbage collector.
The contents of the variable location will be updated accordingly.
Arguments:
Expand Down
11 changes: 0 additions & 11 deletions extracted/vm/src/common/sqVirtualMachine.c
Original file line number Diff line number Diff line change
Expand Up @@ -191,15 +191,6 @@ void waitOnExternalSemaphoreIndex(sqInt semaphoreIndex);


/* Proxy declarations for v1.8 */
#if NewspeakVM
static sqInt
callbackEnter(sqInt *callbackID) { return 0; }
static sqInt
callbackLeave(sqInt callbackID) { return 0; }
#else
sqInt callbackEnter(sqInt *callbackID);
sqInt callbackLeave(sqInt callbackID);
#endif
sqInt addGCRoot(sqInt *varLoc);
sqInt removeGCRoot(sqInt *varLoc);

Expand Down Expand Up @@ -431,8 +422,6 @@ struct VirtualMachine* sqGetInterpreterProxy(void)
#endif

#if VM_PROXY_MINOR > 7
VM->callbackEnter = callbackEnter;
VM->callbackLeave = callbackLeave;
VM->addGCRoot = addGCRoot;
VM->removeGCRoot = removeGCRoot;
#endif
Expand Down
6 changes: 6 additions & 0 deletions smalltalksrc/Slang/SlangMemoryManager.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,12 @@ SlangMemoryManager >> initialize [
memoryMap := Dictionary new
]

{ #category : #'memory-access' }
SlangMemoryManager >> int32AtPointer: address put: aValue [

^ self writeSignedInteger: aValue at: address size: 4
]

{ #category : #'memory-access' }
SlangMemoryManager >> isValidAddress: address [

Expand Down
2 changes: 0 additions & 2 deletions smalltalksrc/Slang/TMethod.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -3158,8 +3158,6 @@ TMethod >> tryToInlineMethodStatementsIn: aCodeGen statementListsInto: aBlock [
stmtLists do: [ :stmtList |
newStatements := OrderedCollection new: stmtList statements size.
stmtList statements do: [ :stmt |
1 haltIf: [
stmt isSend and: [ stmt selector = #initStackPagesAndInterpret ] ].
(self
inlineCodeOrNilForStatement: stmt
returningNodes: returningNodes
Expand Down
2 changes: 1 addition & 1 deletion smalltalksrc/VMMaker-Tools/VMTStackFrame.class.st
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,5 @@ VMTStackFrame >> memory: anObject [

{ #category : #accessing }
VMTStackFrame >> method [
^ self interpreter frameMethod: framePointer
^ self interpreter iframeMethod: framePointer
]
Loading