diff options
| author | Rafael Ávila de Espíndola <[email protected]> | 2011-05-05 18:49:45 -0400 |
|---|---|---|
| committer | Rafael Ávila de Espíndola <[email protected]> | 2011-05-05 19:00:42 -0400 |
| commit | 4445d6771d68d17e14e491475c74492b7d2e1205 (patch) | |
| tree | df357181332603fe94e56f3e27b460cd01826d21 /src/comp/back | |
| parent | Change the setup so that rust_activate_glue returns to rust_exit_task_glue (diff) | |
| download | rust-4445d6771d68d17e14e491475c74492b7d2e1205.tar.xz rust-4445d6771d68d17e14e491475c74492b7d2e1205.zip | |
Use symbolic register names so that we get the correct encoding on OS X.
Diffstat (limited to 'src/comp/back')
| -rw-r--r-- | src/comp/back/x86.rs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/comp/back/x86.rs b/src/comp/back/x86.rs index a40592d5..f439d23e 100644 --- a/src/comp/back/x86.rs +++ b/src/comp/back/x86.rs @@ -31,7 +31,7 @@ fn save_callee_saves_with_cfi() -> vec[str] { auto t; t = vec("pushl %ebp"); t += vec(".cfi_def_cfa_offset " + istr(offset)); - t += vec(".cfi_offset 5, -" + istr(offset)); + t += vec(".cfi_offset %ebp, -" + istr(offset)); t += vec("pushl %edi"); offset += 4; @@ -251,7 +251,7 @@ fn native_glue(int n_args, abi.native_glue_type ngt) -> vec[str] { + save_callee_saves_with_cfi() + vec("movl %esp, %ebp # ebp = rust_sp") - + vec(".cfi_def_cfa_register 5") + + vec(".cfi_def_cfa_register %ebp") + store_esp_to_rust_sp_second_arg() + load_esp_from_runtime_sp_second_arg() |