flush
[m6w6/ext-psi] / src / engine.c
index c3e95c524690b800758ab5f39e85ed2c9101fb76..dc9d2746f235aff80c90a36a35eaf7319dbf0488 100644 (file)
@@ -28,7 +28,10 @@ size_t psi_t_alignment(token_t t)
        case PSI_T_DOUBLE:
                return ALIGNOF_DOUBLE;
        case PSI_T_POINTER:
+       case PSI_T_FUNCTION:
                return ALIGNOF_VOID_P;
+       case PSI_T_ENUM:
+               return ALIGNOF_INT;
        EMPTY_SWITCH_DEFAULT_CASE();
        }
        return 0;
@@ -51,27 +54,15 @@ size_t psi_t_size(token_t t)
        case PSI_T_DOUBLE:
                return SIZEOF_DOUBLE;
        case PSI_T_POINTER:
+       case PSI_T_FUNCTION:
                return SIZEOF_VOID_P;
+       case PSI_T_ENUM:
+               return SIZEOF_INT;
        EMPTY_SWITCH_DEFAULT_CASE();
        }
        return 0;
 }
 
-size_t psi_t_align(token_t t, size_t s)
-{
-       size_t a = psi_t_alignment(t);
-       return ((s - 1) | (a - 1)) + 1;
-}
-
-size_t psi_offset_padding(size_t diff, size_t alignment)
-{
-       if (diff && diff <= ((diff - 1) | (alignment -1)) + 1) {
-               diff = 0;
-       }
-
-       return diff;
-}
-
 int psi_internal_type(impl_type *type)
 {
        switch (type->type) {