search for: atomicord

Displaying 10 results from an estimated 10 matches for "atomicord".

Did you mean: atomicorp
2014 Mar 07
3
[LLVMdev] [RFC] Add second "failure" AtomicOrdering to cmpxchg instruction
...G.h +++ b/include/llvm/CodeGen/SelectionDAG.h @@ -692,12 +692,14 @@ public: SDValue getAtomic(unsigned Opcode, SDLoc dl, EVT MemVT, SDValue Chain, SDValue Ptr, SDValue Cmp, SDValue Swp, MachinePointerInfo PtrInfo, unsigned Alignment, - AtomicOrdering Ordering, + AtomicOrdering SuccessOrdering, + AtomicOrdering FailureOrdering, SynchronizationScope SynchScope); SDValue getAtomic(unsigned Opcode, SDLoc dl, EVT MemVT, SDValue Chain, SDValue Ptr, SDValue Cmp, SD...
2011 Sep 17
2
[LLVMdev] Invalid STOREATOMIC Record
The second equality here: (in lib/Bitcode/Reader/BitcodeReader.cpp) AtomicOrdering Ordering = GetDecodedOrdering(Record[OpNum+2]); if (Ordering == NotAtomic || Ordering == Release || Ordering == AcquireRelease) return Error("Invalid STOREATOMIC record"); Is failing on this assembly, which was generated by Clang: store atomic i32 0, i32*...
2011 Sep 17
0
[LLVMdev] Invalid STOREATOMIC Record
On Sat, Sep 17, 2011 at 1:00 PM, David Meyer <pdox at google.com> wrote: > The second equality here: (in lib/Bitcode/Reader/BitcodeReader.cpp) > >      AtomicOrdering Ordering = GetDecodedOrdering(Record[OpNum+2]); >      if (Ordering == NotAtomic || Ordering == Release || >          Ordering == AcquireRelease) >        return Error("Invalid STOREATOMIC record"); > > Is failing on this assembly, which was generated by Clang: > &g...
2015 Apr 24
2
[LLVMdev] Floating point atomic load and add
> } while (__c11_atomic_compare_exchange_weak( > addr, &oldval, newval, memory_order_seq_cst, memory_order_relaxed)); Actually, I think this condition is inverted. Should be "while (!_c11...". Sorry about that. Tim.
2017 May 29
3
Should we split llvm Support and ADT?
2017-05-26 17:47 GMT-07:00 Zachary Turner via llvm-dev < llvm-dev at lists.llvm.org>: > Changing a header file somewhere and having to spend 10 minutes waiting > for a build leads to a lot of wasted developer time. > > The real culprit here is tablegen. Can we split support and ADT into two > - the parts that tablegen depends on and the parts that it doesn't? >
2013 Aug 23
1
[LLVMdev] Incredible effects of extending AtomicSDNode::Ops
...his isn't as trivial. Even this innocuous change: ==================== --- a/include/llvm/CodeGen/SelectionDAGNodes.h +++ b/include/llvm/CodeGen/SelectionDAGNodes.h @@ -1068,6 +1068,7 @@ public: /// class AtomicSDNode : public MemSDNode { SDUse Ops[4]; + SDUse buffer; void InitAtomic(AtomicOrdering Ordering, SynchronizationScope SynchScope) { // This must match encodeMemSDNodeFlags() in SelectionDAG.cpp. ==================== -- makes LLVM fail 83 regression tests, basically everything related to the atomic ops, in a bunch of unrelated ways: some segfaults, some failing assertions,...
2017 May 29
3
Should we split llvm Support and ADT?
...lot of stuff in there doesn't belong together. A > quick look over the include directory already suggests a split into > "broadly useful stuff" and "narrowly useful stuff" > > Broadly useful stuff: > AlignOf > Allocator > ArrayRecycler > Atomic > AtomicOrdering > Capacity > Casting > Chrono > circular_raw_ostream > COM.h > CommandLine.h > Compiler.h > ConvertUTF.h > CrashRecoveryContext.h > DataExtractor.h > Debug.h > Endian.h > EndianStream.h > Errc.h > Errno.h > Error.h > ErrorHandling.h > Error...
2020 Apr 04
2
Permitted success/failure orderings for atomic compare_exchange
A question has come up on how to interpret the wording of LLVM's documentation regarding the possible memory ordering for success and failure of atomic compare_exchange operations. >From the LLVM reference: "The success and failure ordering <https://llvm.org/docs/LangRef.html#ordering> arguments specify how this cmpxchg synchronizes with other atomic operations. Both ordering
2017 May 29
3
Should we split llvm Support and ADT?
...d be such that it could (at some point) be useful outside of LLVM (just like ADT), so one main criteria could be "could this component of Support be useful outside of LLVM (and its subprojects)". > Broadly useful stuff: > AlignOf > Allocator > ArrayRecycler > Atomic > AtomicOrdering > Capacity > Casting > Chrono > circular_raw_ostream > COM.h > CommandLine.h > Compiler.h > ConvertUTF.h > CrashRecoveryContext.h > DataExtractor.h > Debug.h > Endian.h > EndianStream.h > Errc.h > Errno.h > Error.h > ErrorHandling.h > Error...
2017 Aug 17
3
[RFC] Injecting new element atomic memory intrinsics into MemIntrinsic class hierarchy
...mcpy is recognized as a MemCpyInst, MemTransferInst, and a MemIntrinsic), and add a query method like ‘isUnorderedAtomic’ that will tell you whether the underlying intrinsic is one of the element atomic variants. Alternatively, the method could be a more generic ‘getOrdering()’ that would return an AtomicOrdering; though a memory intrinsic that is required to be implemented with ordered-atomic instructions strikes me as unlikely to ever be desired. There is precedent for encoding the intrinsic property as a query method both within the current memory intrinsic hierarchy itself (the isVolatile() metho...