Chameleon Applications

Chameleon Applications Svn Source Tree

Root/branches/iFabio/Chameleon/i386/modules/klibc/__ashldi3.c

Source at commit 261 created 13 years 1 day ago.
By ifabio, "re-open": create two folder, one for the prefpanel project, other for chameleon bootloader trunk, also synk with latest 832 trunk's code, added some stuff like OpenBSD/FreeBSD/Haiku detection, and added more Nvidia ID cards.
1/*
2 * libgcc/__ashldi3.c
3 */
4
5#include <stdint.h>
6#include <stddef.h>
7
8uint64_t __ashldi3(uint64_t v, int cnt)
9{
10int c = cnt & 31;
11uint32_t vl = (uint32_t) v;
12uint32_t vh = (uint32_t) (v >> 32);
13
14if (cnt & 32) {
15vh = (vl << c);
16vl = 0;
17} else {
18vh = (vh << c) + (vl >> (32 - c));
19vl = (vl << c);
20}
21
22return ((uint64_t) vh << 32) + vl;
23}
24

Archive Download this file

Revision: 261