Page MenuHomeIsabelle/Phabricator

dcjm (David Matthews)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 4 2019, 5:53 PM (128 w, 6 d)

Recent Activity

Tue, Apr 26

dcjm committed rPOLYML50ce3dd5a5f9: Fix segfault as a result of a call to INet6Sock.any. It was calling the IPv4… (authored by dcjm).
Fix segfault as a result of a call to INet6Sock.any. It was calling the IPv4…
Tue, Apr 26, 9:50 PM
dcjm committed rPOLYMLbafe319bc3a6: Remove reference to "make compiler" from instructions. This is no longer… (authored by dcjm).
Remove reference to "make compiler" from instructions. This is no longer…
Tue, Apr 26, 9:50 PM

Feb 24 2022

dcjm committed rPOLYML969fa4a67e4a: The realpath call on some old systems does not accept NULL for the second… (authored by dcjm).
The realpath call on some old systems does not accept NULL for the second…
Feb 24 2022, 6:22 PM
dcjm committed rPOLYML0ef538047194: Add regression test for OS.FileSys.fullPath. (authored by dcjm).
Add regression test for OS.FileSys.fullPath.
Feb 24 2022, 6:22 PM

Jan 30 2022

dcjm committed rPOLYMLefc7438f7cd6: Redo and extend the checks for conditional move. (authored by dcjm).
Redo and extend the checks for conditional move.
Jan 30 2022, 1:22 PM
dcjm committed rPOLYMLe84552abbdc2: Restore tests on AddSubImmediate even though it's no longer used for booleans. (authored by dcjm).
Restore tests on AddSubImmediate even though it's no longer used for booleans.
Jan 30 2022, 1:22 PM
dcjm committed rPOLYML3252ae8fbea5: Merge branch 'ARM64Development' (authored by dcjm).
Merge branch 'ARM64Development'
Jan 30 2022, 1:22 PM

Jan 24 2022

dcjm committed rPOLYML25d40ccf7373: Include the stack arguments in the calculation of the maximum stack space. (authored by dcjm).
Include the stack arguments in the calculation of the maximum stack space.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML0912d2c6a206: Use conditional-set to create boolean results. (authored by dcjm).
Use conditional-set to create boolean results.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML15c840d48c9a: Merge branch 'ARM64Development' (authored by dcjm).
Merge branch 'ARM64Development'
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLf42362437193: Change boolean "not" to use a bit test rather than comparison. (authored by dcjm).
Change boolean "not" to use a bit test rather than comparison.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML87d52e4583ad: Change optimiser as a result of change to tests of booleans. (authored by dcjm).
Change optimiser as a result of change to tests of booleans.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML32f2ba7214cf: Change test of a boolean variable to use logical-and and then use test-and… (authored by dcjm).
Change test of a boolean variable to use logical-and and then use test-and…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML09c4a3c9b82c: Remove CacheCheck that was added for debugging and is no longer needed. (authored by dcjm).
Remove CacheCheck that was added for debugging and is no longer needed.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML017fb85018e4: Rework the cache datatype to include the caching register. In particular we… (authored by dcjm).
Rework the cache datatype to include the caching register. In particular we…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML3b2d9f63eced: Select only general registers when looking at registers to save across a… (authored by dcjm).
Select only general registers when looking at registers to save across a…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML816c1735ae05: Re-enable merged cache-states. (authored by dcjm).
Re-enable merged cache-states.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLad9fc39dc831: Implement passing floating point arguments in FP registers. This simplifies… (authored by dcjm).
Implement passing floating point arguments in FP registers. This simplifies…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML66bad03abc62: Cache unboxing or reals and large-words. (authored by dcjm).
Cache unboxing or reals and large-words.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLf5e7ea7b7845: Optimise untagging of recently tagged values. (authored by dcjm).
Optimise untagging of recently tagged values.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML41be7c896ddf: Have to include FP registers in the return operation. Add conflict for all the… (authored by dcjm).
Have to include FP registers in the return operation. Add conflict for all the…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLd6f1900ebe7d: Implement floating point return values in FP registers. (authored by dcjm).
Implement floating point return values in FP registers.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLdd81d4fd03af: Optimise unboxing of recently boxed items. This occurs in sequences of… (authored by dcjm).
Optimise unboxing of recently boxed items. This occurs in sequences of…
Jan 24 2022, 4:07 PM
dcjm committed rPOLYML2daf52d6809e: Support for arguments and results in floating-point registers. Not yet enabled. (authored by dcjm).
Support for arguments and results in floating-point registers. Not yet enabled.
Jan 24 2022, 4:07 PM
dcjm committed rPOLYMLf6911d27b16f: Use word division which can be converted into a shift rather than integer… (authored by dcjm).
Use word division which can be converted into a shift rather than integer…
Jan 24 2022, 4:07 PM

Jan 16 2022

dcjm committed rPOLYML67384d30eb85: The parent of "../.." is "../../.." not "..". Fixes #167. (authored by dcjm).
The parent of "../.." is "../../.." not "..". Fixes #167.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML6406862e6b32: Try using the atomic operations added in ARM 8.1. These are not available in… (authored by dcjm).
Try using the atomic operations added in ARM 8.1. These are not available in…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML1b6a34576dab: Change to use load-acquire to lock and swap-release to unlock. (authored by dcjm).
Change to use load-acquire to lock and swap-release to unlock.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLed5b19cb8079: Restore the spinning that was previously used to check for a mutex lock. (authored by dcjm).
Restore the spinning that was previously used to check for a mutex lock.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLae59fee9fd54: Disable LSE atomics for the moment. (authored by dcjm).
Disable LSE atomics for the moment.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML354708c15aa7: Allow for the extremely unlikely situation of floating point constants in a… (authored by dcjm).
Allow for the extremely unlikely situation of floating point constants in a…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLee4355129523: Don't include container arguments among the "stable" arguments for non-tail… (authored by dcjm).
Don't include container arguments among the "stable" arguments for non-tail…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLe6117d4d84c7: Sort the constant lists to avoid duplicates. Use bit-encoding for 64-bit… (authored by dcjm).
Sort the constant lists to avoid duplicates. Use bit-encoding for 64-bit…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML6cc00b4ea313: Use movi for floating point zero. (authored by dcjm).
Use movi for floating point zero.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLfd044f2c927f: Fix float constants for big-endian. (authored by dcjm).
Fix float constants for big-endian.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLeb2ed058d3b3: Implement floating point constants in the non-address area. (authored by dcjm).
Implement floating point constants in the non-address area.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLdfc2227eee20: Remove CheckRTSException; add back CPUPause. (authored by dcjm).
Remove CheckRTSException; add back CPUPause.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML1a120b3f9145: Added load/storePolyWord/NativeWord functions to RunCall. (authored by dcjm).
Added load/storePolyWord/NativeWord functions to RunCall.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLf12e7ed29c45: Use TBZ/TBNZ for tag test and branches. (authored by dcjm).
Use TBZ/TBNZ for tag test and branches.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML0c294ecf45e8: Move code to check for RTS exceptions into the RTS caller for the X86. This… (authored by dcjm).
Move code to check for RTS exceptions into the RTS caller for the X86. This…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYMLc6b4f0156a86: Combine adjacent pushes, combine stack resets and use post-indexing to include… (authored by dcjm).
Combine adjacent pushes, combine stack resets and use post-indexing to include…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML66ee38bacc6f: Use ldp and stp for adjacent loads and stores where possible. (authored by dcjm).
Use ldp and stp for adjacent loads and stores where possible.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML8972ed6ab731: Begin peep-hole optimisation. Eliminate unnecessary branches and straighten… (authored by dcjm).
Begin peep-hole optimisation. Eliminate unnecessary branches and straighten…
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML19394e9731c1: Handle allocations of > 4096 which was omitted in earlier change. (authored by dcjm).
Handle allocations of > 4096 which was omitted in earlier change.
Jan 16 2022, 2:18 PM
dcjm committed rPOLYML7f766f218d7d: Move allocation code and branch tables into pre-assembler "instructions". (authored by dcjm).
Move allocation code and branch tables into pre-assembler "instructions".
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML780cd89c9301: Convert ForeignCall to use the pre-assembler layer. Remove ArmSequences and… (authored by dcjm).
Convert ForeignCall to use the pre-assembler layer. Remove ArmSequences and…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML4b3b81c5fe8f: Remove temporary functions that converted the pre-assembly code to the assembly… (authored by dcjm).
Remove temporary functions that converted the pre-assembly code to the assembly…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML417c12dbd538: Return small numbers of multiple results in registers. (authored by dcjm).
Return small numbers of multiple results in registers.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML0a5ebb0e3f7c: Fix another case where the optimiser added a new tuple but didn't set the… (authored by dcjm).
Fix another case where the optimiser added a new tuple but didn't set the…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML0d81c03edaec: Clean up the conflict test for arguments of long format arbitrary precision… (authored by dcjm).
Clean up the conflict test for arguments of long format arbitrary precision…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML8c171e2fdd8d: Support for multiple results from function calls. (authored by dcjm).
Support for multiple results from function calls.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML90195d19db1a: Don't attempt to merge cache states for the moment. It seems to be broken. (authored by dcjm).
Don't attempt to merge cache states for the moment. It seems to be broken.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML4c9b9ada1d9c: Fix the optimiser so that it sets the correct argument type for newly… (authored by dcjm).
Fix the optimiser so that it sets the correct argument type for newly…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLb9af39e4fe02: Use hints to improve the chances that we will be able to retain cache states… (authored by dcjm).
Use hints to improve the chances that we will be able to retain cache states…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLae887f45ad23: Add a dummy instruction if we're caching to see if this is the problem. (authored by dcjm).
Add a dummy instruction if we're caching to see if this is the problem.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLf4d7485ce35f: Fix incorrect test. (authored by dcjm).
Fix incorrect test.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLbbfb606f0d84: Use an indexed load in 32-in-64 if the offset is zero and this is the last… (authored by dcjm).
Use an indexed load in 32-in-64 if the offset is zero and this is the last…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML6ad5898ed17b: Merge the cache state on multiple paths. (authored by dcjm).
Merge the cache state on multiple paths.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLaceade0631e0: Include the cache registers in the save mask for allocations so that if there… (authored by dcjm).
Include the cache registers in the save mask for allocations so that if there…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLbebfbd0bd69a: Change the assertion into a test and don't optimise if the result of the load… (authored by dcjm).
Change the assertion into a test and don't optimise if the result of the load…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML4c0882484f03: Cache the combination of loading a value from the stack and getting the… (authored by dcjm).
Cache the combination of loading a value from the stack and getting the…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLfce817ee5da3: Refine the checking code. (authored by dcjm).
Refine the checking code.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML5d9cfbd6154e: Add basic caching of stack entries and object ids. (authored by dcjm).
Add basic caching of stack entries and object ids.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLfa0674540bc4: Add temporary debugging code to check that the cache register and the value… (authored by dcjm).
Add temporary debugging code to check that the cache register and the value…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML7fce1f8395c6: When picking a register try to avoid those that are caching values. (authored by dcjm).
When picking a register try to avoid those that are caching values.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML37aa4263262e: Separate allocation of new registers at a "destination" from getting the… (authored by dcjm).
Separate allocation of new registers at a "destination" from getting the…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML0e7bbd962d59: Remove extra code to make sure conflicts are symmetrical. (authored by dcjm).
Remove extra code to make sure conflicts are symmetrical.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLecb4e98fd2d7: Improve register hinting by propagating "real hints". (authored by dcjm).
Improve register hinting by propagating "real hints".
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLc092b36b9e93: Move conflict state code into the register allocator. (authored by dcjm).
Move conflict state code into the register allocator.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML9466bd74cda6: Construct the result list in the conversion function rather than mapping it. (authored by dcjm).
Construct the result list in the conversion function rather than mapping it.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML191d23833e4d: Allocate the registers at the same time as converting the code. This changes… (authored by dcjm).
Allocate the registers at the same time as converting the code. This changes…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML941eb27ba507: AllocateRegisters now produces concrete icode and ICodeToArm64Code now handles… (authored by dcjm).
AllocateRegisters now produces concrete icode and ICodeToArm64Code now handles…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML3fdd0ec34e52: Turn the icode type into a polytype to allow for a version with concrete… (authored by dcjm).
Turn the icode type into a polytype to allow for a version with concrete…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML671276c7f5d1: Convert to generating pre-code. Use load/store pairs for exception handling. (authored by dcjm).
Convert to generating pre-code. Use load/store pairs for exception handling.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLc0717241dd6e: Completed conversion of instructions. (authored by dcjm).
Completed conversion of instructions.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML30f866755bbb: More instructions including loops. (authored by dcjm).
More instructions including loops.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML7c187aea18b3: Added some extra instructions at the assembly level and completed the pre… (authored by dcjm).
Added some extra instructions at the assembly level and completed the pre…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML7f7c7c6f2a84: Convert more instructions. (authored by dcjm).
Convert more instructions.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML3a9d923ad8d5: Begin the process of generating pre-assembler code rather than assembly code… (authored by dcjm).
Begin the process of generating pre-assembler code rather than assembly code…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLa83350181b28: Add pre-assembly functor and signature. Split icode loads and stores for… (authored by dcjm).
Add pre-assembly functor and signature. Split icode loads and stores for…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLb6debe6171d5: Add further operations at the pre-assembler level. (authored by dcjm).
Add further operations at the pre-assembler level.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML05cad0c77e02: Added extra instructions including floating point. (authored by dcjm).
Added extra instructions including floating point.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML947f9fec097a: Sort out ordering of instruction sequences. (authored by dcjm).
Sort out ordering of instruction sequences.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLcee95484d416: Must clear the argument registers from the cache after a CompareByteVector or… (authored by dcjm).
Must clear the argument registers from the cache after a CompareByteVector or…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML939e52102227: Volatile refs are byte memory so don't need to be initialised in the allocation. (authored by dcjm).
Volatile refs are byte memory so don't need to be initialised in the allocation.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML9de8d4df608e: Don't try to print a value with stringOfWord: it may not be a valid address. (authored by dcjm).
Don't try to print a value with stringOfWord: it may not be a valid address.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML87de8368dabe: Fix initialisation of multiple items. (authored by dcjm).
Fix initialisation of multiple items.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLa7ed237efbef: Optimise various constant operations so that "ref" is now minimal. (authored by dcjm).
Optimise various constant operations so that "ref" is now minimal.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML730b7046fc03: Check for exceptions raised in the RTS in the RTS call wrapper code and remove… (authored by dcjm).
Check for exceptions raised in the RTS in the RTS call wrapper code and remove…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLfa611c35150f: Save active registers in the long case of an arbitrary precision operation… (authored by dcjm).
Save active registers in the long case of an arbitrary precision operation…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML21abaa89ce11: Fix store allocation profiling. (authored by dcjm).
Fix store allocation profiling.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML6894721d8c0a: String length words ARE tagged when loaded using LoadStoreUntaggedUnsigned so… (authored by dcjm).
String length words ARE tagged when loaded using LoadStoreUntaggedUnsigned so…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML1c2ae6594828: Fix typos in immutable load function names. (authored by dcjm).
Fix typos in immutable load function names.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML9d5aa8e715df: X0 is used for the exception packet so has to be reserved in raises and handles. (authored by dcjm).
X0 is used for the exception packet so has to be reserved in raises and handles.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML4dc7944d985f: Must not use X30 for the result of AllocateMemoryFixed/Variable because it… (authored by dcjm).
Must not use X30 for the result of AllocateMemoryFixed/Variable because it…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML2e08c5719b1f: Fix typo in version string. (authored by dcjm).
Fix typo in version string.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML96a16232e787: Remove unused exception identifiers. (authored by dcjm).
Remove unused exception identifiers.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYML073a796121af: Vector indexing should use load-from-immutable. (authored by dcjm).
Vector indexing should use load-from-immutable.
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLfa4dc4f1c16c: Remove a piece of debugging code that includes PolyML.makestring. This seems… (authored by dcjm).
Remove a piece of debugging code that includes PolyML.makestring. This seems…
Jan 16 2022, 2:17 PM
dcjm committed rPOLYMLf6e520830f52: Fix typo that caused Int.quot to fail. Use sign-extending indexed loads/stores… (authored by dcjm).
Fix typo that caused Int.quot to fail. Use sign-extending indexed loads/stores…
Jan 16 2022, 2:17 PM