about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--miasm/arch/ia32_arch.py2
-rw-r--r--miasm/core/parse_ad.py6
2 files changed, 7 insertions, 1 deletions
diff --git a/miasm/arch/ia32_arch.py b/miasm/arch/ia32_arch.py
index 929db6eb..3f6a5af4 100644
--- a/miasm/arch/ia32_arch.py
+++ b/miasm/arch/ia32_arch.py
@@ -210,7 +210,7 @@ def is_reg(a):
     return True
 
 def get_label(a):
-    if x86_afs.ad in a:
+    if x86_afs.ad in a and a[x86_afs.ad]:
         return None
     if x86_afs.imm in a:
         return None
diff --git a/miasm/core/parse_ad.py b/miasm/core/parse_ad.py
index 67fca3a8..8cb5ca9f 100644
--- a/miasm/core/parse_ad.py
+++ b/miasm/core/parse_ad.py
@@ -277,6 +277,12 @@ def p_expression_10(t):
         t[2][x86_afs.ad] = x86_afs.u32
     t[0] = t[2]
 
+def p_expression_10b(t):
+    '''expression : expression LBRA expression RBRA '''
+    t[0] = t[3]
+    for f in t[1]:
+        t[0][f] = t[1][f]
+
 def p_expression_10a(t):
     '''expression : opt_seg_colon expression '''
     t[2].update(t[1])