diff options
author | Bernhard Schommer <bernhardschommer@gmail.com> | 2015-09-06 19:38:53 +0200 |
---|---|---|
committer | Bernhard Schommer <bernhardschommer@gmail.com> | 2015-09-06 19:38:53 +0200 |
commit | dba05a9f6259c82a350987b511bf1a71f113d0ba (patch) | |
tree | 6e7fee8d65b6a180447267da9a95a93827443caf /cparser | |
parent | 108db39b8b7c1d42cbc38c5aabf885ef5440f189 (diff) | |
parent | 47d0e5256ab79b402faae14260fa2fabc1d24dcb (diff) | |
download | compcert-dba05a9f6259c82a350987b511bf1a71f113d0ba.tar.gz compcert-dba05a9f6259c82a350987b511bf1a71f113d0ba.zip |
X
Merge branch 'master' into debug_locations
Diffstat (limited to 'cparser')
-rw-r--r-- | cparser/ExtendedAsm.ml | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/cparser/ExtendedAsm.ml b/cparser/ExtendedAsm.ml index fbf8d569..05084561 100644 --- a/cparser/ExtendedAsm.ml +++ b/cparser/ExtendedAsm.ml @@ -57,10 +57,9 @@ let set_label_reg lbl pos pos' subst = have this feature and with which syntax. *) let set_label_regpair lbl pos pos' subst = - StringMap.add (name_of_label ~modifier:"R" lbl pos) (sprintf "%%%d" pos') - (StringMap.add (name_of_label ~modifier:"Q" lbl pos) - (sprintf "%%%d" (pos' + 1)) - subst) + StringMap.add (name_of_label ~modifier:"R" lbl pos) (sprintf "%%R%d" pos') + (StringMap.add (name_of_label ~modifier:"Q" lbl pos) (sprintf "%%Q%d" pos') + subst) let set_label_mem lbl pos pos' subst = StringMap.add (name_of_label lbl pos) @@ -91,7 +90,7 @@ let rec transf_inputs loc env accu pos pos' subst = function let valid = Str.string_match re_valid_input cstr 0 in if valid && String.contains cstr 'r' then if is_reg_pair env e.etyp then - transf_inputs loc env (e :: accu) (pos + 1) (pos' + 2) + transf_inputs loc env (e :: accu) (pos + 1) (pos' + 1) (set_label_regpair lbl pos pos' subst) inputs else transf_inputs loc env (e :: accu) (pos + 1) (pos' + 1) @@ -133,7 +132,7 @@ let transf_outputs loc env = function let valid = Str.string_match re_valid_output cstr 0 in if valid && String.contains cstr 'r' then if is_reg_pair env e.etyp then - (Some e, [], set_label_regpair lbl 0 0 StringMap.empty, 1, 2) + (Some e, [], set_label_regpair lbl 0 0 StringMap.empty, 1, 1) else (Some e, [], set_label_reg lbl 0 0 StringMap.empty, 1, 1) else |