There might be an upper limit on the speed of the language itself, but what has a lot more room for improvement is speed of DOM operations and DOM rendering. Since you could involve all kinds of fancy graphics hardware acceleration in that, as IE9 is purported to do, there's a lot more to be done there.
Most JS developers agree now that the slowest operations are DOM operations so they are avoided as much as possible.
JS speed has improved so much recently due to optimisations like JIT (Just In Time compiling). There will be an upper limit eventually but we haven't hit it yet.
It's damn fast but still a high-level interpreted language - time is taken for a program in the browser to compile it on the fly and run.
It wont hit the speed of well written C code, but most things don't need that speed anyway.
I was browsing the language shootout the other day and came across the page for the regex test. I'm not sure how it's doing it or if something is wrong with the test but V8 is outperforming everything else, including C. That's the only test it leads though.
V8 JIT-compiles regular expressions. I don't know what C/C++ do -- I'd assume they run the state machine directly, but maybe they do compile it further like V8 does.
The Mozilla blog recently posted something about this, saying how all the major browsers are approaching the upper limit of JS speed. Can't find that post now though, but pretty sure it was a HN submission.