Live data from Hacker News

How is Ultrassembler so fast?

jghuff.com

51–53 of 53 posts

Re: How is Ultrassembler so fast?

#51
post #7

Earlier quoted context omitted.

> LLVM's C++ API I think I read something about this but couldn't figure out how to use it because the documentation is horrible. So, I found it easier to implement my own, and as it turns out, there are a few HORRIBLE bugs in the LLVM assembler (from cross reference testing) probably because nobody is using the C++ API. > There are plenty of cppcon presentations [1] about exceptions, performance, caveats, blah blah.…

> I don't have enough time to watch these kinds of presentations. Then let me pick and share some of my favorites that I found enlightening, and summarize with some information that I found useful. By far, the most useful one is Khalil Estell's presentation last year [0]. It's a fairly face paced but relatively deep dive into exception mechanics. At the end, he advocates for a new tool that would audit a program to d…

Update: it looks like link [4] is just a rehash of his talk from last year's cppcon [0].

[0]: https://www.youtube.com/watch?v=bY2FlayomlE

[4]: https://www.youtube.com/watch?v=LorcxyJ9zr4

Re: How is Ultrassembler so fast?

#52
I also have to ask where all this assembly code is coming from, that has to be compiled fast. If it's compiler output, maybe you could hack the compiler back end to generate tokenized assembly code, eliminating a lot of scanning and stuff. It would still be human readable through a simple program that converted the tokens back to mnemonics. The tokens could be 4 digit hex numbers or something like that, so it would still be an easily handled text file.

Lots of simple compilers generate object code directly instead of assembly code, so the above is not so bad by comparison.

Re: How is Ultrassembler so fast?

#53
post #50

Earlier quoted context omitted.

I implemented an assembler as part of VMware thinapp and this was big performance boost for me but maybe you have a different experience from your efforts?

Yes. (I'm not going into a pissing contest.)

https://github.com/jclarkcom/assembler-io-benchmark
Post reply on HN