diff options
author | Tristan Gingold | 2016-01-05 06:44:53 +0100 |
---|---|---|
committer | Tristan Gingold | 2016-01-06 18:38:37 +0100 |
commit | b5797a5cef6d25817da7998f6263afa53e196d25 (patch) | |
tree | ad3b67a93d16e8a06fab2d7a8c4d8993ff101b8a /src/ortho/mcode/ortho_code-exprs.adb | |
parent | 955e964b024de556c4c0db8fd745c6abdb8052fe (diff) | |
download | ghdl-b5797a5cef6d25817da7998f6263afa53e196d25.tar.gz ghdl-b5797a5cef6d25817da7998f6263afa53e196d25.tar.bz2 ghdl-b5797a5cef6d25817da7998f6263afa53e196d25.zip |
mcode: add support for x86-64
Diffstat (limited to 'src/ortho/mcode/ortho_code-exprs.adb')
-rw-r--r-- | src/ortho/mcode/ortho_code-exprs.adb | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ortho/mcode/ortho_code-exprs.adb b/src/ortho/mcode/ortho_code-exprs.adb index 17a47f4..a529034 100644 --- a/src/ortho/mcode/ortho_code-exprs.adb +++ b/src/ortho/mcode/ortho_code-exprs.adb @@ -727,6 +727,13 @@ package body Ortho_Code.Exprs is end if; end New_Lit; + function Is_Expr_S32 (Cst : O_Enode) return Boolean is + begin + pragma Assert (Get_Expr_Kind (Cst) = OE_Const); + return Shift_Right_Arithmetic (Get_Expr_Low (Cst), 32) + = Get_Expr_High (Cst); + end Is_Expr_S32; + function Get_Static_Chain (Depth : O_Depth) return O_Enode is Cur_Depth : O_Depth := Cur_Subprg.Depth; |