wtfsck
6d7e440e72
Generate classes to convert string -> enum variants (tests)
2022-06-20 21:38:47 +02:00
wtfsck
ad78eef4e6
Use `{@code XXX}` instead of `<code>XXX</code>` in javadocs
2022-06-20 21:38:37 +02:00
wtfsck
d625bcf95a
Add missing `final` to a few classes
2022-06-20 21:38:32 +02:00
wtfsck
ea4293a66e
Methods should start with a lowercase char
2022-06-20 21:38:26 +02:00
wtfsck
6f69cdbfbe
Add missing `@Override`
2022-06-20 21:38:21 +02:00
wtfsck
d40f82a03b
Update `decode(Instruction)` docs
2022-06-20 21:38:16 +02:00
wtfsck
fc0b9e091d
Remove useless parens
2022-06-20 21:38:09 +02:00
wtfsck
876059ddbd
Add back `internal`
2022-06-19 20:12:11 +02:00
wtfsck
aedc0a20ac
Use unsigned shr
2022-06-19 19:33:31 +02:00
wtfsck
11bf7f31c7
Update docs
2022-06-19 19:26:24 +02:00
wtfsck
f15991baba
Impl Java `Instruction.toString()` (masm formatter)
2022-06-19 19:21:32 +02:00
wtfsck
252c32a568
Add Java `StringOutput`
2022-06-19 19:21:27 +02:00
wtfsck
7ce5743ca0
Add Java `Decoder`
2022-06-19 19:21:20 +02:00
wtfsck
a1d5ef428e
Init `mandatoryPrefix` with correct values
2022-06-19 19:21:13 +02:00
wtfsck
fad22d8ff5
Remove javadoc from package private methods
2022-06-19 19:21:07 +02:00
wtfsck
e69eb26225
Fix JDK 8 javadoc warnings
2022-06-18 19:55:12 +02:00
wtfsck
129dc9860d
Add Java `CodeAssembler`
...
Tests will be generated later
2022-06-18 19:39:53 +02:00
wtfsck
c6a9a491a7
Support horizontal lines (doc gen)
2022-06-18 19:39:48 +02:00
wtfsck
b8999f60b7
Update `MemoryOperand` to use `ICRegister`
2022-06-18 19:39:43 +02:00
wtfsck
82e89996f1
Move `MemoryOperandSize` enum from internal asm to normal asm package
2022-06-18 19:39:31 +02:00
wtfsck
7bb0b12fd3
Update Java `Instruction.create()` gen code
...
- Java doesn't support default arguments. Gen extra methods with less
parameters.
- Remove `byte`/`short` parameters and replace them with `int`
parameters and add runtime checks checking that they fit in 8 or 16
bits. If they're `byte`/`short`, the user had to cast a literal, eg.
`(byte)123`.
2022-06-18 19:39:25 +02:00
wtfsck
6ca9ad7f31
Update C# `Assembler` gen code
2022-06-18 19:39:19 +02:00
wtfsck
7d8015fed9
Add `ICRegister` for `Instruction.create()` methods
...
The `Register` is not an enum, just a class with integers, which causes
problems when overloading the `create()` method, so the param type had
to be included in the method name, eg. `create_reg_mem()` etc. This
commit adds `ICRegister` and `ICRegisters*` and updates the `create()`
methods to take an `ICRegister` instead of an `int` (a `Register`)
parameter so they can now all be called `create()`.
2022-06-18 19:39:11 +02:00
wtfsck
63edd8b901
Method should start with a lowercase char
2022-06-14 21:37:06 +02:00
wtfsck
b4d7d9a018
Field should start with a lowercase char
2022-06-14 21:29:58 +02:00
wtfsck
d1ae74f954
Add Java `NasmFormatter`
2022-06-14 21:10:50 +02:00
wtfsck
8bbb2bd52f
Add Java `MasmFormatter`
2022-06-14 21:10:44 +02:00
wtfsck
f24abde8b8
Add Java `IntelFormatter`
2022-06-14 21:10:37 +02:00
wtfsck
f2d8bee707
Add Java `GasFormatter`
2022-06-14 21:10:30 +02:00
wtfsck
a058a72894
Add Java `FastFormatter`
2022-06-14 21:10:20 +02:00
wtfsck
8b0be7d423
A few fixes, eg. add static, lowercase first char etc
2022-06-14 21:09:39 +02:00
wtfsck
87b6839739
Add Java `Formatter` and related classes
...
No implementations yet, though.
2022-06-13 22:56:21 +02:00
wtfsck
b106141ced
Add `private` to methods and fields
2022-06-13 22:56:16 +02:00
wtfsck
5240123667
Add missing `@FunctionalInterface` annotation to `VAGetRegisterValue`
2022-06-13 22:56:11 +02:00
wtfsck
e8763cbb51
Should be signed rshift
2022-06-13 22:56:06 +02:00
wtfsck
ea7b49f5fa
Add a `copy()` method to `Used{Register,Memory}`
2022-06-13 22:55:59 +02:00
wtfsck
90fdbe5c15
Rename to `hasOpMask()`
2022-06-13 22:55:54 +02:00
wtfsck
2ae085fd83
Rename method to `getVirtualAddress()`
2022-06-11 20:42:59 +02:00
wtfsck
d098cb59ad
Add missing private ctor
2022-06-11 20:42:52 +02:00
wtfsck
787917eb83
Remove old docs, those methods have been removed
2022-06-11 20:42:47 +02:00
wtfsck
46c4418bd3
Fix method name (start with lowercase char)
2022-06-11 20:42:40 +02:00
wtfsck
bcc200d944
Add Java `InstructionInfoFactory` and related classes
2022-06-11 20:12:37 +02:00
wtfsck
45cef78ffd
Add Java `BlockEncoder` and related classes
2022-06-11 20:12:30 +02:00
wtfsck
3987a615b2
Add an automatic module name to `MANIFEST.INF`
2022-06-11 20:12:24 +02:00
wtfsck
7576dfad47
Make sure it compiles with JDK 8
2022-06-09 22:46:43 +02:00
wtfsck
a74ed4f53e
Add Java `Encoder`
...
Some files were also moved to the `enc` package.
2022-06-09 22:46:36 +02:00
wtfsck
7643bf4c08
Add an error msg if it's an invalid `displ_size`
2022-06-09 22:46:31 +02:00
wtfsck
9f0cb87170
Add `Instruction.getRawMemoryIndexScale()`
2022-06-09 22:46:17 +02:00
wtfsck
c1ba9d0865
Add missing `MemorySize.isBroadcast()` function
2022-06-09 22:46:12 +02:00
wtfsck
eb9bcdf576
Move big `byte`/`short` arrays to the resources
2022-06-08 22:29:24 +02:00