search for: cantrap

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

Did you mean: mantrap
2019 Jun 14
4
Planned change to IR semantics: constant expressions never have undefined behavior
See https://reviews.llvm.org/D63036 for the full patch and description. Essentially, the Constant::canTrap API is going away. To make this work, the semantics of division and remainder constant expressions are changing slightly, so division by zero produces poison, not undefined behavior. (The corresponding instructions still have undefined behavior.) This change should make writing and understanding...
2019 Jun 14
2
Planned change to IR semantics: constant expressions never have undefined behavior
...3A__reviews.llvm.org_D63036&d=DwMFaQ&c=slrrB7dE8n7gBJbeO0g-IQ&r=O_4M49EtSpZ_-BQYeigzGv0P4__noMcSu2RYEjS1vKs&m=HPH8LbjOYmP3G9p6HJYKLtOFGQQJ0aWeEc7QU46PkOw&s=Q-PK-STEJTkFgcTQeOjIR7RY4e_iIHz191Qk_8syQlA&e=> > for the full patch and description. Essentially, the Constant::canTrap > API is going away. To make this work, the semantics of division and > remainder constant expressions are changing slightly, so division by zero > produces poison, not undefined behavior. (The corresponding instructions > still have undefined behavior.) This change should make writi...
2019 Jun 15
2
Planned change to IR semantics: constant expressions never have undefined behavior
...reviews.llvm.org_D63036&d=DwMFaQ&c=slrrB7dE8n7gBJbeO0g-IQ&r=O_4M49EtSpZ_-BQYeigzGv0P4__noMcSu2RYEjS1vKs&m=HPH8LbjOYmP3G9p6HJYKLtOFGQQJ0aWeEc7QU46PkOw&s=Q-PK-STEJTkFgcTQeOjIR7RY4e_iIHz191Qk_8syQlA&e=> >> for the full patch and description. Essentially, the Constant::canTrap >> API is going away. To make this work, the semantics of division and >> remainder constant expressions are changing slightly, so division by zero >> produces poison, not undefined behavior. (The corresponding instructions >> still have undefined behavior.) This change s...
2012 Dec 18
1
[LLVMdev] target specific ways to extend ConstantExpr
That's an interesting idea. What are the essential differences between the new subclass and ConstantExpr? Will it end up like ConstantExpr? Or you want it to be ConstantExpr 'done right'? Thanks. Yuan -----Original Message----- From: Eli Friedman [mailto:eli.friedman at gmail.com] Sent: Monday, December 17, 2012 5:40 PM To: Yuan Lin Cc: Chris Lattner; llvmdev at cs.uiuc.edu
2014 Sep 19
2
[LLVMdev] More careful treatment of floating point exceptions
Hi Sanjay, Thanks, I saw this flag and it's definitely should be considered, but it appeared to me to be static characteristic of target platform. I'm not sure how appropriate it would be to change its value from a front-end. It says "Has", while optional flag would rather say "Uses" meaning that implementation cares about floating point exceptions. Regards, Sergey
2014 Sep 25
2
[LLVMdev] More careful treatment of floating point exceptions
...rms/Utils/SimplifyCFG.cpp @@ -267,7 +267,7 @@ static bool DominatesMergePoint(Value *V, BasicBlock *BB, // Non-instructions all dominate instructions, but not all constantexprs // can be executed unconditionally. if (ConstantExpr *C = dyn_cast<ConstantExpr>(V)) - if (C->canTrap()) + if (C->canTrap() || !isSafeToSpeculativelyExecute(V, DL)) return false; return true; } -- 1.8.4 -------------- next part -------------- Subject: [PATCH 3/7] Add HonorFPExceptions flag to TargetOptions --- include/llvm/Target/TargetOptions.h | 7 ++++++- 1 file chan...
2020 Mar 25
4
Multi-Threading Compilers
On Wed, Mar 25, 2020 at 8:52 AM Doerfert, Johannes <jdoerfert at anl.gov> wrote: > I think the solution space for the value/use-list issue might be larger > than what was mentioned so far. > > > Some random thoughts: > > If no pass ever walks the use list of a constant, except globals which > we could handle differently, we could get rid of their use-list or >