summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2008-10-09 00:07:21 -0700
committerGabe Black <gblack@eecs.umich.edu>2008-10-09 00:07:21 -0700
commit523531a40e83b3023ae5911f48388e2490f16cba (patch)
treee24ce539e83f2f23e6341434acd06258ff35aea7
parentc5c6ad7ed6dff171c888aa20d505f87293cc1159 (diff)
downloadgem5-523531a40e83b3023ae5911f48388e2490f16cba.tar.xz
Microcode: Fix a very old bug with parsing external labels in microcode.
-rw-r--r--src/arch/micro_asm.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/arch/micro_asm.py b/src/arch/micro_asm.py
index 36c9919c0..0982f6b89 100644
--- a/src/arch/micro_asm.py
+++ b/src/arch/micro_asm.py
@@ -242,7 +242,10 @@ def t_params_PARAMS(t):
def t_asm_ID(t):
r'[A-Za-z_]\w*'
t.type = reserved_map.get(t.value, 'ID')
- t.lexer.begin('params')
+ # If the ID is really "extern", we shouldn't start looking for parameters
+ # yet. The real ID, the label itself, is coming up.
+ if t.type != 'EXTERN':
+ t.lexer.begin('params')
return t
# If there is a label and you're -not- in the assembler (which would be caught