On Wednesday, 14 January 2015 at 07:49:09 UTC, Ola Fosheim Grøstad wrote:
Then you can't catch by super class. This is not going to fly.

I said value. Use bitmasks. Class hierarchies don't work very well.


Once again, no specifics.

You write that paragraph like there is some logical links between elements in it, but there is none.

If you cannot follow the logic... Where did you get lost?


I was not lost. I know how to recognize a non sequitur when I read one.

The only things that is sure here is that it is going to make the non exception path slower. Without specific we can say anything else than that.

?

You essentially have two options:

1. A single branch on return.

2. Multiple return paths.

2a) returning to the calling function

2b) using a landing pad (current solution)


It's a good thing that you can do all of these in D already.

It won't help with register pressure. Having a pointer to an exception object in a register is equivalent to having a pointer to a TLS memory area in a register.

TLS is in a register already.


You only need this when you are using static TLS variable, which is not that common in practice. The change would makes this required all over the place.

it can be optimized away so you don't need TLS if you don't span over non-D code.


Without specifics, it is another instance of the sufficiently smart compiler running gag.

This does not take a very smart compiler. You can use heuristics, such as ones using the function signature.


It is a known fact that a sufficiently smart compiler will use heuristic. It is also fairly obvious that this heuristic will use function signature.

You don't make things faster by making the calling convention easier. There is chance that this is gonna fly any better than a flat iron.

?

Of course you make it faster by allowing the compiler to use it's own calling conventions.

Making a new calling convention is not going to magically make things faster. If the calling convention need to do more, it is certainly going to make things slower.

Hopefully, function calls are not common at all, so that shouldn't be a problem.

Reply via email to