New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Indentation takes forever on lines after AUTOINST (with wildcard and elisp function in template rule) #663
Comments
Original Redmine Comment Just wanted to point out that I'm seeing this same issue on Emacs 24.3.1. I haven't any good workarounds other than shuffling code around with some copy-pastes to avoid hitting it, and using C-g to abort indentation when it happens. My version: You are using verilog-mode 2013-10-09-deae5d2-mod-vpo |
Original Redmine Comment Another example hang |
Original Redmine Comment Using hangcase.v, I was able to bisect the tree and prove that 0e4bf42 did in fact introduce the decrease in performance. Next, I ran 'elp' on verilog-mode:
This returns the following table (boring stuff truncated):
The call-count for verilog-backward-token is pretty high - not the highest, but certainly the longest elapsed time. I'd be more concerned about the average times that are >1 but the call-count is low. Admittedly I have no idea how to actually use elp, so this is mostly speculation at this point. To find out where verilog-backward-token is being called, I inserted the command ```(message "%s\n%s" (point) (backtrace))
diff --git a/verilog-mode.el b/verilog-mode.el
Function Name Call Count Elapsed Time Average Time
line Function Call Count Elapsed Time Average Time
diff --git a/verilog-mode.el b/verilog-mode.el
line Function Call Count Elapsed Time Average Time
|
Original Redmine Comment Awesome! Pushed to trunk. |
Author Name: Brad Dobbie
Original Redmine Issue: 663 from https://www.veripool.org
Original Date: 2013-07-01
Original Assignee: Alex Reed
After a recent upgrade of our site's Verilog-mode version, I notice very poor indentation performance under some circumstances.
I've distilled the problem code to this testcase. I need to use a template rule with a regexp matcher and an elisp function call. To observe the problem, place the cursor after the semicolon of the assign statement and press ENTER.
I'm suspicious of this recent commit:
0e4bf42
The text was updated successfully, but these errors were encountered: