search for: shldl

Displaying 7 results from an estimated 7 matches for "shldl".

Did you mean: shld
2008 Dec 18
2
[LLVMdev] Shifts that use only 5 LSBs.
I can't find the bug you refer to. Also, it doesn't have this problem in x86: it uses the shldl instruction. PPC32, interestingly enough, generates something similar, but looks like it has extra instructions to or in what's guaranteed to be 0. Reminding myself of some PPC assembler though, so I'm not 100%. Thanks, Dan On Dec 16, 2008, at 9:27 PM, Eli Friedman wrote: >...
2008 Dec 18
0
[LLVMdev] Shifts that use only 5 LSBs.
...an't find the bug you refer to. Did the link not work? I'll try pasting it in again. In any case, I checked in a fix disabling the broken optimization; try updating to current SVN. http://llvm.org/bugs/show_bug.cgi?id=3225 > Also, it doesn't have this problem in x86: it uses the shldl > instruction. Well, sort of... it turned out that it wasn't that hard to construct a case that broke on x86. -Eli
2008 Dec 17
0
[LLVMdev] Shifts that use only 5 LSBs.
On Tue, Dec 16, 2008 at 5:20 PM, Daniel M Gessel <gessel at apple.com> wrote: > The problem here is that it looks like LLVM is introducing an expansion that > assumes 32 bit shifts use more than 5 bits of the shift value. > I created a simple test function: > u64 mebbe_shift( u64 x, int test ) > { > if( test ) > x <<= 2; > return x; > } > I compile using
2008 Dec 17
2
[LLVMdev] Shifts that use only 5 LSBs.
On Dec 16, 2008, at 7:57 PM, Eli Friedman wrote: > On Tue, Dec 16, 2008 at 3:36 PM, Daniel M Gessel <gessel at apple.com> > wrote: >> I'm working on a Target that only uses the 5 lsbs of the shift >> amount. > > Okay, that's quite common... x86 is the same. > Thanks - yes, I'd heard rumors that x86 operates the same way. >> I only have 32
2013 Jun 24
1
[LLVMdev] DebugInfo: Missing non-trivially-copyable parameters in SelectionDAG
...build/clang/debug/bin/./FileCheck /usr/local/google/home/blaikie/dev/llvm/src/test/CodeGen/X86/legalize-shift-64.ll -- Exit Code: 1 Command Output (stderr): -- /usr/local/google/home/blaikie/dev/llvm/src/test/CodeGen/X86/legalize-shift-64.ll:66:10: error: expected string not found in input ; CHECK: shldl ^ <stdin>:135:5: note: scanning from here shldl %cl, %ebp, %eax ^ <stdin>:137:2: note: possible intended match here shll %cl, %ebp ^ -- ******************** FAIL: LLVM :: CodeGen/X86/brcond.ll (30 of 51) ******************** TEST 'LLVM :: CodeGen/X86/brcond.ll'...
2006 Jun 26
0
[klibc 24/43] i386 support for klibc
...6/libgcc/__ashldi3.S @@ -0,0 +1,29 @@ +/* + * arch/i386/libgcc/__ashldi3.S + * + * 64-bit shl + */ + .text + .align 4 + .globl __ashldi3 + .type __ashldi3, at function +__ashldi3: +#ifndef _REGPARM + movl 4(%esp),%eax + movl 8(%esp),%edx + movb 12(%esp),%cl +#endif + cmpb $32,%cl + jae 1f + + shldl %cl,%eax,%edx + shl %cl,%eax + ret + +1: + xorl %edx,%edx + shl %cl,%eax + xchgl %edx,%eax + ret + + .size __ashldi3,.-__ashldi3 diff --git a/usr/klibc/arch/i386/libgcc/__ashrdi3.S b/usr/klibc/arch/i386/libgcc/__ashrdi3.S new file mode 100644 index 0000000..7666eb2 --- /dev/null +++ b/usr/klib...
2006 Jun 28
35
[klibc 00/31] klibc as a historyless patchset (updated and reorganized)
I have updated the klibc patchset based on feedback received. In particular, the patchset has been reorganized so as not to break git-bisect. Additionally, this updates the patch base to 2.6.17-git12 (d38b69689c349f35502b92e20dafb30c62d49d63) and klibc 1.4.8; the main difference on the klibc side is removal of obsolete code. This is also available as a git tree at: