gingerBill
|
b82fa18cb3
|
Fix typo
|
2026-08-20 10:16:34 +01:00 |
|
gingerBill
|
5d873a4b8c
|
Update assert
|
2026-08-20 09:58:32 +01:00 |
|
gingerBill
|
63918fe1fe
|
Remove debug code
|
2026-08-20 09:54:50 +01:00 |
|
gingerBill
|
baae2636b8
|
Add support for x86 mnenomics in and out
|
2026-08-20 09:53:28 +01:00 |
|
gingerBill
|
7a6f70ba31
|
False positives: Ignore the out pinned parameters for the time being
|
2026-08-19 17:34:14 +01:00 |
|
gingerBill
|
2873e323c7
|
Fix #align_stack redundancy checks
|
2026-08-19 14:52:35 +01:00 |
|
gingerBill
|
5e165d2393
|
Add even more diagnostics for pinned registers; and begin work on redundant #align_stack checks
|
2026-08-19 14:50:08 +01:00 |
|
gingerBill
|
7638ac1bd4
|
Add more checks for flag clobbering
|
2026-08-19 14:09:46 +01:00 |
|
gingerBill
|
adbd1bd930
|
Add code (but disablled) to warn for redundant #clobber and #volatile
|
2026-08-19 13:56:15 +01:00 |
|
gingerBill
|
d4f81b5220
|
Add checks to see if diverging asm templates are actually diverging
|
2026-08-19 13:51:28 +01:00 |
|
gingerBill
|
229a5164a7
|
Add warning for unused lables in asm templates
|
2026-08-19 13:17:10 +01:00 |
|
gingerBill
|
5917d5db6e
|
Add error message for immediate-operand specificity
|
2026-08-19 13:12:15 +01:00 |
|
gingerBill
|
0c42447192
|
Add pin class/width and tie class checks
|
2026-08-19 13:11:08 +01:00 |
|
gingerBill
|
75c91feb36
|
Check for output parameters not used but pinned; Check for templates with observable effects but not marked as #volatile
|
2026-08-19 12:56:03 +01:00 |
|
gingerBill
|
8956deb322
|
Check for implicitly read registers which have not be handled
|
2026-08-19 12:29:54 +01:00 |
|
gingerBill
|
6d903e9bde
|
Remove implicit_rd from clobber
|
2026-08-19 11:56:07 +01:00 |
|
gingerBill
|
8d0cc4d64b
|
Clobber implicit_wr and implicit_rd
|
2026-08-19 11:03:50 +01:00 |
|
gingerBill
|
a86e523053
|
Allow for inlineable asm calls
|
2026-08-18 14:57:34 +01:00 |
|
gingerBill
|
fd9ccd7b10
|
Support segment overrides on asm memory operands
|
2026-08-18 14:44:24 +01:00 |
|
gingerBill
|
12c89ee2bf
|
Allow for [base - disp]
|
2026-08-18 14:11:01 +01:00 |
|
gingerBill
|
8e807fb7aa
|
Use new clobber forms in check_asm.cpp
|
2026-08-18 11:23:20 +01:00 |
|
gingerBill
|
582ff64bee
|
General clean up of llvm_backend_asm.cpp code
|
2026-08-17 22:58:51 +01:00 |
|
gingerBill
|
77bedf9947
|
Fix scratch register pinning
|
2026-08-17 21:37:03 +01:00 |
|
gingerBill
|
a2bcf3177a
|
Improve error messages for register class printing
|
2026-08-17 21:10:24 +01:00 |
|
gingerBill
|
c3b2029f64
|
Support asm template groups
|
2026-08-17 19:54:21 +01:00 |
|
gingerBill
|
d0c3b78ece
|
Allow (parent scope) constants within asm templates
|
2026-08-17 18:56:47 +01:00 |
|
gingerBill
|
d71c25dd9b
|
asm: add #skip N and #nop N
|
2026-08-17 13:36:59 +01:00 |
|
gingerBill
|
bd95d2ae66
|
Add asm directive #align N
|
2026-08-17 13:32:28 +01:00 |
|
gingerBill
|
55377f71ef
|
Support #byte directive for asm templates
|
2026-08-17 13:21:40 +01:00 |
|
gingerBill
|
dd5c2f98fd
|
Always require the results of asm templates
|
2026-08-17 13:05:33 +01:00 |
|
gingerBill
|
d1f561ec88
|
Correct instruction_size_suffix so that the correct suffix can be selected for the instruction to adhere to AT&T syntax
|
2026-08-17 12:59:23 +01:00 |
|
gingerBill
|
db94c5a6cb
|
Begin work in %flags.zf et al
|
2026-08-17 12:25:17 +01:00 |
|
gingerBill
|
344e8afa36
|
#clobber cc -> #clobber flags
|
2026-08-17 12:10:08 +01:00 |
|
gingerBill
|
cb903df235
|
#side_effects -> #volatile; Remove dead code
|
2026-08-13 10:03:00 +01:00 |
|
gingerBill
|
c085a46185
|
Move #side_effects and #align_stack to the specification list
|
2026-08-12 23:40:57 +01:00 |
|
gingerBill
|
5768668af9
|
Add did you mean for registers
|
2026-08-12 20:52:26 +01:00 |
|
gingerBill
|
39c5e69f82
|
Move determine_asm_operand_kind upwards
|
2026-08-12 16:23:31 +01:00 |
|
gingerBill
|
b32846bb35
|
Minor change to implies_side_effects
|
2026-08-12 14:16:10 +01:00 |
|
gingerBill
|
2300a48782
|
Infer #clobber memory and #clobber cc from the mnemonics directly
|
2026-08-12 12:45:48 +01:00 |
|
gingerBill
|
99a128e78e
|
Remove %any as a concept
|
2026-08-12 11:08:33 +01:00 |
|
gingerBill
|
bef386b1fb
|
Implement asm view-of parameters pred: i64, predb: u8 = pred
|
2026-08-12 10:33:53 +01:00 |
|
gingerBill
|
db41921a16
|
Mock out p0: u64 = %rax, p0b: u8 = p0
|
2026-08-12 10:20:11 +01:00 |
|
gingerBill
|
612b25a425
|
Handle disp parameter correctly
|
2026-08-12 09:34:16 +01:00 |
|
gingerBill
|
658fa54ee4
|
Support [base]:u8 type interpretations for memory operands; And determine the correct suffix to use
|
2026-08-12 09:30:55 +01:00 |
|
gingerBill
|
c80fedc070
|
Support [base + index<<scale] and [base + index>>scale]; Support syntax for [base]:u8 (not implemented yet)
|
2026-08-12 09:03:31 +01:00 |
|
gingerBill
|
21ad041232
|
Handle prefixes better
|
2026-08-11 17:44:55 +01:00 |
|
gingerBill
|
e31bacd664
|
Check memory operand parameters better
|
2026-08-11 16:37:55 +01:00 |
|
gingerBill
|
6a20d21358
|
Add extra checks for asm memory operand scale in frontend and backend
|
2026-08-11 16:00:03 +01:00 |
|
gingerBill
|
a76664ed2a
|
Improve error messages for immediate values and explain how far out they are in terms of bits too.
|
2026-08-11 15:12:00 +01:00 |
|
gingerBill
|
5621cbc85a
|
Improve scoring for operand error handling
|
2026-08-11 15:06:14 +01:00 |
|