Displaying 9 results from an estimated 9 matches for "negl".
Did you mean:
neal
2010 Jul 08
1
[LLVMdev] X86 gcc and clang have incompatible calling conventions for returning some small structs?
Hello,
I think I have come across an inconsistency between gcc and clang/llvm with respect to returning small structs. Given the
following code:
> struct s {
> int a;
> int b;
> };
>
> struct s3 {
> int a;
> int b;
> int c;
> };
>
> struct s new_s(int v){
> struct s res;
> res.a = v;
> res.b = -v;
> return res;
2006 Jun 26
0
[klibc 24/43] i386 support for klibc
...00..147ad94
--- /dev/null
+++ b/usr/klibc/arch/i386/libgcc/__negdi2.S
@@ -0,0 +1,21 @@
+/*
+ * arch/i386/libgcc/__negdi2.S
+ *
+ * 64-bit negation
+ */
+
+ .text
+ .align 4
+ .globl __negdi2
+ .type __negdi2, at function
+__negdi2:
+#ifndef _REGPARM
+ movl 4(%esp),%eax
+ movl 8(%esp),%edx
+#endif
+ negl %edx
+ negl %eax
+ sbbl $0,%edx
+ ret
+
+ .size __negdi2,.-__negdi2
diff --git a/usr/klibc/arch/i386/open.S b/usr/klibc/arch/i386/open.S
new file mode 100644
index 0000000..7cd136c
--- /dev/null
+++ b/usr/klibc/arch/i386/open.S
@@ -0,0 +1,29 @@
+/*
+ * arch/i386/open.S
+ *
+ * Handle the open() sys...
2015 Oct 11
2
How to add NOP?
Can you send the IR you are using?
Volkan
On Thu, Oct 8, 2015 at 6:28 AM Erdem Derebaşoğlu <
erdemderebasoglu at hotmail.com> wrote:
> Thanks. I enabled my pass. I have one resolved issue though:
> MachineMemOperand::getAddrSpace() always returns zero. How can I use it to
> distinguish private memory accesses?
>
> Erdem
>
> ------------------------------
> From:
2016 Jan 06
0
[klibc:master] i386: remove special handling of socketcall
...g 4
- pushl %ecx
- pushl %edx
- pushl %eax
- movl %esp,%ecx
-#else
- leal 8(%esp),%ecx # Arguments already contiguous on-stack
-#endif
-
- movl $__NR_socketcall,%eax
- call *__syscall_entry
-
-#ifdef _REGPARM
- addl $6*4, %esp
-#endif
-
- cmpl $-4095,%eax # Error return?
-
- popl %ebx
-
- jb 1f
-
- negl %eax
- movl %eax,errno
- orl $-1,%eax # Return -1
-1:
- ret
-
- .size __socketcall_common,.-__socketcall_common
-
-#endif
diff --git a/usr/klibc/socketcalls.pl b/usr/klibc/socketcalls.pl
index 3dac096..9df5949 100644
--- a/usr/klibc/socketcalls.pl
+++ b/usr/klibc/socketcalls.pl
@@ -42,44 +42,27 @@...
2006 Jun 26
0
[klibc 37/43] x86_64 support for klibc
...rgument registers; the system
+ * call number in %eax.
+ */
+ .text
+ .align 4
+ .globl __syscall_common
+ .type __syscall_common, at function
+__syscall_common:
+ movq %rcx,%r10 # The kernel uses %r10 istf %rcx
+ syscall
+
+ cmpq $-4095,%rax
+ jnb 1f
+ ret
+
+ # Error return, must set errno
+1:
+ negl %eax
+ movl %eax,errno(%rip) # errno is type int, so 32 bits
+ orq $-1,%rax # orq $-1 smaller than movq $-1
+ ret
+
+ .size __syscall_common,.-__syscall_common
diff --git a/usr/klibc/arch/x86_64/sysstub.ph b/usr/klibc/arch/x86_64/sysstub.ph
new file mode 100644
index 0000000..e2d797b
--- /dev/null...
2016 Apr 13
0
[PATCH 1/1] x32 support
...e <asm/unistd.h>
+
+ .text
+ .align 4
+ .globl vfork
+ .type vfork, @function
+vfork:
+ mov (%rsp),%edx /* Return address */
+ add $8,%rsp /* pop rdx and clear bits 63-32 */
+ mov $__NR_vfork,%eax
+ syscall
+ push %rdx /* Push the return address back */
+ cmp $-4095, %rax
+ jae 1f
+ ret
+1:
+ negl %eax
+ movl %eax, errno(%rip)
+ or $-1,%rax
+ ret
diff --git a/usr/klibc/lseek.c b/usr/klibc/lseek.c
index f262d19..f0faa3b 100644
--- a/usr/klibc/lseek.c
+++ b/usr/klibc/lseek.c
@@ -11,7 +11,7 @@
#include <sys/syscall.h>
#include <bitsize.h>
-#if _BITSIZE == 32
+#if _BITSIZE == 32 &...
2006 May 25
2
Compilation issues with s390
Hi all,
I'm trying to compile asterisk on the mainframe (s390 / s390x) and I am
running into issues. I was wondering if somebody could give a hand?
I'm thinking that I should be able to do this. I have noticed that Debian
even has binary RPM's out for Asterisk now. I'm trying to do this on SuSE
SLES8 (with the 2.4 kernel).
What I see is, an issue that arch=s390 isn't
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:
2013 Oct 15
0
[LLVMdev] [llvm-commits] r192750 - Enable MI Sched for x86.
...; @@ -28,8 +28,7 @@ bb.nph:
>> bb2:
>> ret i32 %x_offs
>> ; CHECK-LABEL: test2:
>> -; CHECK: movl %e[[A0]], %eax
>> -; CHECK: addl $-5, %eax
>> +; CHECK: leal -5(%r[[A0:..]]), %eax
>> ; CHECK: andl $-4, %eax
>> ; CHECK: negl %eax
>> ; CHECK: leal -4(%r[[A0]],%rax), %eax
>>
>> Modified: llvm/trunk/test/CodeGen/X86/load-slice.ll
>> URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/load-slice.ll?rev=192750&r1=192749&r2=192750&view=diff
>> ==========...