Opened 12 years ago

Last modified 5 years ago

#757 closed enhancement

provide ##core#inline-routines for cheap SRFI-4 vector primitives — at Version 1

Reported by: felix winkelmann Owned by: felix winkelmann
Priority: minor Milestone: 5.1
Component: compiler Version: 4.7.x
Keywords: Cc:
Estimated difficulty: medium

Description (last modified by felix winkelmann)

XXXvector-length, XXXvector-ref and XXXvector-set! would be much more efficient if routines callable via ##core#inline[_allocate] would be available for them (just as it currently is for, say, vector-ref). Since the structure-tag is not available in the C runtime, it has to be explicitly passed, e.g.

C_word C_i_XXXvector_ref(C_word tag, C_word vec, C_word index);
C_word C_i_XXXvector_set(C_word tag, C_word vec, C_word index, C_word x);
C_word C_i_XXXvector_length(C_word tag, C_word vec);

(need allocating ..._ref for f64/s32/u32 vector)

Note that the existing C_a_i_f64/S32/u32vector_ref are incorrectly named and should be C_u_a_i_... or something similar.

Change History (1)

comment:1 Changed 12 years ago by felix winkelmann

Description: modified (diff)
Note: See TracTickets for help on using tickets.