<div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Sven Barth <<a href="mailto:pascaldragon@googlemail.com">pascaldragon@googlemail.com</a>> schrieb am Di., 9. Juli 2019, 07:41:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Am 08.07.2019 um 02:52 schrieb J. Gareth Moreton:<br>
> On an extra note, the assembly language produced is not yet optimal, <br>
> so it may end up that an x86-specific implementation will be <br>
> beneficial.  TIsNode contains a virtual method named <br>
> "DoVariableEnumCheck" that would allow such an extension, coupled with <br>
> returning "nil" that would defer code generation to <br>
> "pass_generate_code" (allowing this, but not overriding <br>
> "pass_generate_code", will trigger an internal error, because the 'is' <br>
> node normally never allows it to be called).  Nevertheless, even if <br>
> that is a no-go, it's making me a little excited to see if I can find <br>
> new peephole optimisations to implement.  But until my old x86_64 <br>
> overhaul is accepted, rejected or reworked (at least to make it <br>
> successfully merge), I can't really make any new additions yet.<br>
Some non-technical remarks regarding code formatting (I know the <br>
compiler does currently not use a consistent style, but there is one <br>
that is considered the de facto one (I should find the time to write <br>
that down in the Wiki some time -.-) and new code should be added <br>
following this):<br>
- no spaces between operators and symbols, both in assignments and <br>
expressions as well as parameter declarations<br>
- local variables are written in lower case with the declarations as <br>
"name1,name2,name3 : type"<br>
- types are written in lower case<br>
- method names are lower case with '_' as separator between words (so <br>
your DoVariableEnumCheck would become do_variable_enum_check)<br>
<br>
And one very important technical remark:<br>
*No* "as" (or "is") inside the compiler. Use hard casts as you already <br>
checked for the def type<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">And I'm rather conflicted regarding the usage of "with". But Florian and/or Jonas should comment whether we want new ones in the compiler or not. </div><div dir="auto"><br></div><div dir="auto">Regards, </div><div dir="auto">Sven </div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>