Displaying 15 results from an estimated 15 matches similar to: "A pattern for portable __builtin_add_overflow()"
2016 Apr 04
2
How to call an (x86) cleanup/catchpad funclet
I've modified llvm to emit vc++ compatible SEH structures for my
personality on x86/Windows and my handler works fine, but the only thing
I can't figure out is how to call these funclets, they look like:
Catch:
"?catch$3@?0?m3 at 4HA":
LBB4_3: # %BasicBlock26
pushl %ebp
pushl %eax
addl $12, %ebp
movl %esp, -28(%ebp)
movl $LBB4_5, %eax
2023 Dec 02
1
Small inconsistencies in configure checks
On Sat, Dec 02, 2023 at 10:24:57PM +0300, Vitaly Chikunov wrote:
> JFYI. I am not sure it's worth reporting but, when building 2.5.5 for ALT
Talking of small inconsistencies, 2.5.5 isn't a Xapian version...
> I noticed small inconsistencies in configure output.
>
> 1. xapian-binding:
>
> checking for /usr/bin/rdoc... no
> checking for rdoc... /usr/bin/rdoc
>
2023 Dec 02
1
Small inconsistencies in configure checks
Hi,
JFYI. I am not sure it's worth reporting but, when building 2.5.5 for ALT
I noticed small inconsistencies in configure output.
1. xapian-binding:
checking for /usr/bin/rdoc... no
checking for rdoc... /usr/bin/rdoc
Looks curious but no problem since it's found anyway.
2. xapian-core when built with GCC:
checking whether __builtin_add_overflow is declared... yes
...
2019 Mar 04
2
Where's the optimiser gone (part 11): use the proper instruction for sign extension
Compile with -O3 -m32 (see <https://godbolt.org/z/yCpBpM>):
long lsign(long x)
{
return (x > 0) - (x < 0);
}
long long llsign(long long x)
{
return (x > 0) - (x < 0);
}
While the code generated for the "long" version of this function is quite
OK, the code for the "long long" version misses an obvious optimisation:
lsign: # @lsign
mov
2015 Jan 15
3
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
On Thu, Jan 15, 2015 at 1:26 PM, Nick Lewycky <nlewycky at google.com> wrote:
> On 15 January 2015 at 13:10, Daniel Berlin <dberlin at dberlin.org> wrote:
>
>> Yes.
>> I've attached an updated patch that does the following:
>>
>> 1. Fixes the partialalias of globals/arguments
>> 2. Enables partialalias for cases where nothing has been unified to
2020 Oct 17
0
[PATCH nbdkit] common/include/tvdiff.h: Add formal specification.
This commit adds a formal specification of tvdiff_usec and a partial
specification of subtract_timeval. These may be proved using Frama-C.
The existing functions ignored overflow, but it is possible to call
the functions with parameters that will cause overflow. So to create
a formal specification I had to modify the functions to signal
overflow. Luckily GCC and Clang have convenient
2019 Jun 25
2
Optimised stack direction?
Why does LLVM struggle to optimize the following stack direction check?
#include <stdint.h>
inline int stack_direction() {
int x = 0;
int y = 0;
return uintptr_t(&x) < uintptr_t(&y);
}
int main(int argc, const char * argv[]) {
return stack_direction();
}
It generates the following assembly:
main: # @main
lea rcx, [rsp - 8]
lea rdx, [rsp - 4]
xor eax, eax
2015 Jan 26
0
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
Inline
George
> On Jan 26, 2015, at 1:05 PM, Daniel Berlin <dberlin at dberlin.org> wrote:
>
> George, given that, can you just build constexpr handling (it's not as easy as you think) as a separate funciton and have it use it in the right places?
Will do. :)
> FWIW, my current list of CFLAA issues is:
>
> 1. Unknown values (results from ptrtoint, incoming
2015 Jan 26
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
George, given that, can you just build constexpr handling (it's not as easy
as you think) as a separate funciton and have it use it in the right places?
FWIW, my current list of CFLAA issues is:
1. Unknown values (results from ptrtoint, incoming pointers, etc) are not
treated as unknown. These should be done through graph edge (so that they
can be one way, otherwise, you will unify
2015 Jan 30
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
I'm not exactly thrilled about the size of this diff -- I'll happily break
it up into more manageable bits later today, because some of it is test
fixes, another bit is a minor bug fix, etc.
Important bit (WRT ConstantExpr): moved the loop body from buildGraphFrom
into a new function. The body has a few tweaks to call constexprToEdges on
all ConstantExprs that we encounter.
2015 Jan 14
3
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
Oh, sorry, i didn't rebase it when i changed the fix, you would have had to
apply the first on top of the second.
Here is one against HEAD
On Wed, Jan 14, 2015 at 12:32 PM, Ana Pazos <apazos at codeaurora.org> wrote:
> Daniel, your patch does not apply cleanly. Are you on the tip?
>
> The code I see there is no line if (QueryResult == MayAlias|| QueryResult == PartialAlias)
2015 Jan 15
2
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
Yes.
I've attached an updated patch that does the following:
1. Fixes the partialalias of globals/arguments
2. Enables partialalias for cases where nothing has been unified to a
global/argument
3. Fixes that select was unifying the condition to the other pieces (the
condition does not need to be processed :P). This was causing unnecessary
aliasing.
4. Adds a regression test to
2015 Jan 14
3
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
On 13 January 2015 at 22:11, Daniel Berlin <dberlin at dberlin.org> wrote:
> This is caused by CFLAA returning PartialAlias for a query that BasicAA
> can prove is NoAlias.
>
One of them is wrong. Which one?
I'm not sure from your description that this is a chaining issue.
PartialAlias doesn't chain and isn't supposed to, it's a final answer just
like NoAlias and
2019 Jul 29
10
[9.0.0 Release] Release Candidate 1 is here
Hi everyone,
9.0.0-rc1 was just tagged from the release_90 branch at r367217
(tagged as llvmorg-9.0.0-rc1 in the Git monorepo).
Source code and docs are available at https://prereleases.llvm.org/9.0.0/#rc1
Binaries will be added as they become available.
Please file bug reports for any issues you find as blockers of
https://llvm.org/PR42474
Release testers: please start your engines, run the
2015 Jan 14
4
[LLVMdev] question about enabling cfl-aa and collecting a57 numbers
Inline
- George
> On Jan 14, 2015, at 10:49 AM, Daniel Berlin <dberlin at dberlin.org> wrote:
>
>
>
>> On Tue, Jan 13, 2015 at 11:26 PM, Nick Lewycky <nlewycky at google.com> wrote:
>>> On 13 January 2015 at 22:11, Daniel Berlin <dberlin at dberlin.org> wrote:
>>> This is caused by CFLAA returning PartialAlias for a query that BasicAA can