No I split all verts as it is imported. It becomes very difficult if you don't split all verts as i initially did have it trying to conserve as much space as possible but it becomes a nightmare when trying to load the verts for the faces.
i.e it much neater to use a vtx command which loads verts 0 - 31 @ position 0 in the vert buffer draw all faces that need these verts and then load verts 32 - 63 and draw all the faces that need these verts then it is to try and figure out where the verts are from the identical verts. because that means that face 1 and face 500 could potentially be sharing a vert which means trying to load a vert 0 and vert XXXX and vert XXXX to make the face which is not doable (the vert buffer is only 32 verts).
(Edit: well actually you could do it but you have to load the vert into a position inside the buffer which i never seemed to get to work in BK, you can get it to output fine in MW and BG from memory but not in PJ64.... Going back a while though so might be wrong there.)
So you then have to line the faces up and the verts to get a nice flow of how the verts are to the face numbers which is not always possible and lead to errors and overall pretty messy code.
On top of this if a user updates a solid face to an alpha all the work above needs to be completely redone and that to me was just asking for issues and problems as it can get confusing when faces are not drawn right and debugging a situation like that can be bothersome.
So short answer is yes you could potentially share a few of the verts but the difficulty and management was imo not worth it. Although that is debatable and people like xDan and spinout might use shared verts in sharp ocarina really would not know tbh.