]> rtime.felk.cvut.cz Git - l4.git/blobdiff - l4/pkg/uclibc/lib/contrib/uclibc/libc/sysdeps/linux/common/sysdep.h
update
[l4.git] / l4 / pkg / uclibc / lib / contrib / uclibc / libc / sysdeps / linux / common / sysdep.h
index cd5b2f1e35a0f57ab8bfc22a72e3654a7e569c09..a7ec9548096c644b7c70a07027835fbe6b2e6f42 100644 (file)
@@ -67,6 +67,9 @@
 #  define cfi_remember_state           .cfi_remember_state
 #  define cfi_restore_state            .cfi_restore_state
 #  define cfi_window_save              .cfi_window_save
+#  define cfi_personality(enc, exp)    .cfi_personality enc, exp
+#  define cfi_lsda(enc, exp)           .cfi_lsda enc, exp
+
 # else
 #  define cfi_startproc
 #  define cfi_endproc
@@ -84,6 +87,8 @@
 #  define cfi_remember_state
 #  define cfi_restore_state
 #  define cfi_window_save
+#  define cfi_personality(enc, exp)
+#  define cfi_lsda(enc, exp)
 # endif
 
 #else /* ! ASSEMBLER */
    ".cfi_restore_state"
 #  define CFI_WINDOW_SAVE \
    ".cfi_window_save"
+#  define CFI_PERSONALITY(enc, exp) \
+   ".cfi_personality " CFI_STRINGIFY(enc) "," CFI_STRINGIFY(exp)
+#  define CFI_LSDA(enc, exp) \
+   ".cfi_lsda " CFI_STRINGIFY(enc) "," CFI_STRINGIFY(exp)
 # else
 #  define CFI_STARTPROC
 #  define CFI_ENDPROC
 #  define CFI_REMEMBER_STATE
 #  define CFI_RESTORE_STATE
 #  define CFI_WINDOW_SAVE
+#  define CFI_PERSONALITY(enc, exp)
+#  define CFI_LSDA(enc, exp)
 # endif
 
 #endif /* __ASSEMBLER__ */
+
+/* Values used for encoding parameter of cfi_personality and cfi_lsda.  */
+#define DW_EH_PE_absptr                0x00
+#define DW_EH_PE_omit          0xff
+#define DW_EH_PE_uleb128       0x01
+#define DW_EH_PE_udata2                0x02
+#define DW_EH_PE_udata4                0x03
+#define DW_EH_PE_udata8                0x04
+#define DW_EH_PE_sleb128       0x09
+#define DW_EH_PE_sdata2                0x0a
+#define DW_EH_PE_sdata4                0x0b
+#define DW_EH_PE_sdata8                0x0c
+#define DW_EH_PE_signed                0x08
+#define DW_EH_PE_pcrel         0x10
+#define DW_EH_PE_textrel       0x20
+#define DW_EH_PE_datarel       0x30
+#define DW_EH_PE_funcrel       0x40
+#define DW_EH_PE_aligned       0x50
+#define DW_EH_PE_indirect      0x80
+