search for: setjmp

Displaying 20 results from an estimated 531 matches for "setjmp".

2013 May 08
1
[LLVMdev] Clarifying the state of setjmp/longjmp support in LLVM and Clang
I'm trying to make sense in the support for setjmp/longjmp in Clang and LLVM, with only partial success. I'll try to summarize my findings in the hope that someone can shed some light on why things are the way they are and what I'm missing. Clang. Clang recognizes two forms of setjmp (all I say here applies to longjmp similarly): * __buil...
2008 Sep 26
3
SYSLINUX 3.72 released
Well, it has to happen at some point, so I have officially pushed out SYSLINUX 3.72. The big news in this release is of course the ISOLINUX hybrid mode support (a single image which can be booted either from a CD-ROM or from a hard disk/USB stick), but there are plenty of more goodies in here, including the label listing (not technically completion) on the Tab key. As usual, huge thanks to
2005 Nov 25
0
[LLVMdev] Re: setjmp/longjmp interoperable between llvm and gcc?
...em will be compiled >> to native code using llvm. It calls, and is called by, the other >> subsystems, many of which have to be compiled using gcc because they >> use small amounts of inline assembly. All of the subsystems catch >> and throw errors to one another using setjmp/longjmp. >> >> When gcc-built code calls longjmp(), the destination might be a >> setjmp() in llvm-built code, and vice versa. At present the >> gcc-built code uses the setjmp/longjmp implementations provided >> by the gnu C library; and presumably the llvm-built...
2011 Oct 04
2
[LLVMdev] setjmp - longjmp
On Oct 4, 2011, at 3:53 PM, Eli Friedman wrote: > On Tue, Oct 4, 2011 at 3:10 PM, Khaled ElWazeer > <khalid.alwazeer at gmail.com> wrote: >> Hi, >> >> I have some code which has sigsetjmp / longjmp. After a longjmp, unreachable >> is inserted, which is fine. The problem is that in the backend before >> calling longjmp, some register was spilled to a stack location which is live >> across the jmp. I mean, it will be live after jumping. The stack location >> wa...
2005 Nov 21
1
[LLVMdev] setjmp/longjmp interoperable between llvm and gcc?
...ems (mostly legacy C code). One subsystem will be compiled to native code using llvm. It calls, and is called by, the other subsystems, many of which have to be compiled using gcc because they use small amounts of inline assembly. All of the subsystems catch and throw errors to one another using setjmp/longjmp. When gcc-built code calls longjmp(), the destination might be a setjmp() in llvm-built code, and vice versa. At present the gcc-built code uses the setjmp/longjmp implementations provided by the gnu C library; and presumably the llvm-built code will use llvm's setjmp/longjmp intrinsi...
2011 Oct 04
3
[LLVMdev] setjmp - longjmp
Hi, I have some code which has sigsetjmp / longjmp. After a longjmp, unreachable is inserted, which is fine. The problem is that in the backend before calling longjmp, some register was spilled to a stack location which is live across the jmp. I mean, it will be live after jumping. The stack location was initialized before the call to set...
2011 Apr 14
0
[PATCH] setjmp.S: longjmp() must not cause setjmp() to return zero
From: Matt Fleming <matt.fleming at linux.intel.com> POSIX specifies that if 0 is passed as the 'val' argument to longjmp(), setjmp() must return 1. setjmp() must NOT return 0 if it's returning because of a call to longjmp(). Signed-off-by: Matt Fleming <matt.fleming at linux.intel.com> --- com32/lib/setjmp.S | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/com32/lib/setjmp.S b/com32/lib/s...
2013 Dec 03
0
[klibc:master] ppc64: Add ppc64le support
...Signed-off-by: Anton Blanchard <anton at samba.org> Signed-off-by: H. Peter Anvin <hpa at zytor.com> --- Makefile | 7 +++++-- usr/klibc/arch/ppc64/MCONFIG | 4 ++-- usr/klibc/arch/ppc64/crt0.S | 34 ++++++++++++++++++++----------- usr/klibc/arch/ppc64/setjmp.S | 40 ++++++++++++++++++++++++++---------- usr/klibc/arch/ppc64/sysstub.ph | 45 ++++++++++++++++++++++++++--------------- 5 files changed, 87 insertions(+), 43 deletions(-) diff --git a/Makefile b/Makefile index a7da622..dc10fc5 100644 --- a/Makefile +++ b/Makefile @@ -30,8 +30,11 @@ export O...
2011 Feb 16
2
fwd: fix up ARM assembly to use 'bx lr' in place of 'mov pc, lr'.
...527720] Re: thumb2 porting issues identified: klibc uses mov.*pc I've also touched it up to be mergeable with Debian (support v4t builds with #ifdef). Confirmed that installing the resulting klibc packages on my beagleboard gives me a successfully-booting initramfs with klibc; and the vfork/setjmptest test cases all pass in the klibc package tree. Fixes: https://bugs.launchpad.net/ubuntu/+source/klibc/+bug/527720 --- klibc-1.5.20.orig/usr/klibc/arch/arm/vfork.S +++ klibc-1.5.20/usr/klibc/arch/arm/vfork.S @@ -25,7 +25,11 @@ vfork: ldrcs r3, 1f mvncs r0, #0 strcs r...
2011 Oct 05
0
[LLVMdev] setjmp - longjmp
That code should do it, but I realized you only detect setjmp functions by name. My code is calling "__sigsetjmp" not "segsetjmp". You only support these functions: static const char *ReturnsTwiceFns[] = { "_setjmp", "setjmp", "sigsetjmp", "setjmp_syscall", "savectx",...
2015 Sep 05
3
[PATCH] mips/setjmp.S don't save and restore float point registers
Klibc FTBFS with '-mno-odd-spreg' on mips32(el) platforms, As it try to save/restore odd-number FPR. Indeed no other architectures save/restore FPR at all. It shouldn't be needed. --- usr/klibc/arch/mips/setjmp.S | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/usr/klibc/arch/mips/setjmp.S b/usr/klibc/arch/mips/setjmp.S index 68eed19..21e4115 100644 --- a/usr/klibc/arch/mips/setjmp.S +++ b/usr/klibc/arch/mips/setjmp.S @@ -29,18 +29,6 @@ LEAF(setjmp) sw s8, 40(a0) sw ra, 44(...
2013 Dec 03
2
[PATCH 1/2] ppc64: Add ppc64le support
Add PowerPC 64bit little endian support. Signed-off-by: Anton Blanchard <anton at samba.org> --- Makefile | 7 +++++-- usr/klibc/arch/ppc64/MCONFIG | 4 ++-- usr/klibc/arch/ppc64/crt0.S | 34 ++++++++++++++++++++----------- usr/klibc/arch/ppc64/setjmp.S | 40 ++++++++++++++++++++++++++---------- usr/klibc/arch/ppc64/sysstub.ph | 45 ++++++++++++++++++++++++++--------------- 5 files changed, 87 insertions(+), 43 deletions(-) diff --git a/Makefile b/Makefile index a7da622..dc10fc5 100644 --- a/Makefile +++ b/Makefile @@ -30,8 +30,11 @@ export O...
2007 Aug 28
1
[LLVMdev] llvm-gcc4 and setjmp
Hello, Torvald > is there documentation about what happens to setjmp() et al, and how one > should handle the setjmp intrinsics? You shouldn't use them at all. > Are setjmp() function calls transformed to intrinsics, or are > the intrinsics only used for EH? Intrisincs are used for representing necessary EH code flow. User's setjmp() are just fu...
2012 Jul 01
2
[klibc:master] arm/setjmp.S: fix longjmp
.../git.kernel.org/?p=libs/klibc/klibc.git;a=commit;h=d7d16afbdae9bdea83aeb26ac572e6fc4d7d4940 Author: Steve McIntyre <steve at einval.com> AuthorDate: Fri, 29 Jun 2012 18:13:34 +0100 Committer: maximilian attems <max at stro.at> CommitDate: Sun, 1 Jul 2012 22:51:00 +0200 [klibc] arm/setjmp.S: fix longjmp There's a real bug in the ARM assembly version of longjmp in usr/klibc/arch/arm/setjmp.S: it will always pass back its first argument as a return value, even if it's 0 (see the man page for more details). Oddly, the Thumb implementation in the same file *is* correct! Signed...
2011 Oct 04
0
[LLVMdev] setjmp - longjmp
On Tue, Oct 4, 2011 at 3:10 PM, Khaled ElWazeer <khalid.alwazeer at gmail.com> wrote: > Hi, > > I have some code which has sigsetjmp / longjmp. After a longjmp, unreachable > is inserted, which is fine. The problem is that in the backend before > calling longjmp, some register was spilled to a stack location which is live > across the jmp. I mean, it will be live after jumping. The stack location > was initialized be...
2007 Aug 24
2
[LLVMdev] llvm-gcc4 and setjmp
Hi Anton, > > I would expect llvm-gcc to use LLVM's setjmp/longjmp intrinsics and > > then to run the LowerSetJmp pass to turn the intrinsic calls into uses > > of invoke and unwind. At that point, the control flow is explicit, > > isn't it? > Unfortunately, no. You can call setjmp/longjmp on the same jump buffer > multiple time...
2005 Apr 20
2
[LLVMdev] setjmp, longjmp and unwind
I'm trying to get unwind to work. I was unable to get an unwind example to work directly, so I decided to compile a c program that uses setjmp and longjmp and work backwards. I keep running into a "Abort trap" problem, whatever "Abort trap" is. Anyway, here's an example of a C program that compiles and works properly under normal gcc, but that fails with an "Abort trap" under LLVM: #include <setjmp....
2007 Aug 24
1
[LLVMdev] llvm-gcc4 and setjmp
Hello, Jay. > the resulting bitcode doesn't use LLVM's exception handling > intrinsics, it just has a call to a function called "_setjmp". And > there doesn't seem to be any provision for returning the current value > of the volatile variable v if setjmp returns non-zero - the bitcode > always returns zero, whereas the spec for setjmp() says that f() > should return 1 if g() does a longjmp(). This seems to be w...
2016 Sep 16
2
setjmp/longjmp and volatile stores, but non-volatile loads
Hi, In our (non-C) compiler we use setjmp/longjmp to implement exception handling. For the initial implementation LLVM backend, I'm keeping that model. In order to ensure that changes performed in a try/setjmp==0 block survive the longjmp, the changes must be done via volatile operations. Given that volatility is a property of individ...
2003 Dec 12
2
[PATCH] ppc64 support
...c/arch/ppc64/Makefile.inc klibc-0.92/klibc/arch/ppc64/Makefile.inc --- klibc-0.92.orig/klibc/arch/ppc64/Makefile.inc 2002-08-13 04:04:47.000000000 +0000 +++ klibc-0.92/klibc/arch/ppc64/Makefile.inc 2003-12-12 21:54:45.000000000 +0000 @@ -7,4 +7,9 @@ # accordingly. # +ARCHOBJS = \ + arch/$(ARCH)/setjmp.o + +ARCHSOOBJS = $(patsubst %.o,%.lo,$(ARCHOBJS)) + archclean: diff -p -purNx linux klibc-0.92.orig/klibc/arch/ppc64/crt0.S klibc-0.92/klibc/arch/ppc64/crt0.S --- klibc-0.92.orig/klibc/arch/ppc64/crt0.S 2002-08-10 10:55:55.000000000 +0000 +++ klibc-0.92/klibc/arch/ppc64/crt0.S 2003-12-12 23:15:55...