llvm-6502/include/llvm/Support
Eli Friedman ff03048c13 LangRef and basic memory-representation/reading/writing for 'cmpxchg' and
'atomicrmw' instructions, which allow representing all the current atomic
rmw intrinsics.

The allowed operands for these instructions are heavily restricted at the
moment; we can probably loosen it a bit, but supporting general
first-class types (where it makes sense) might get a bit complicated,
given how SelectionDAG works.

As an initial cut, these operations do not support specifying an alignment,
but it would be possible to add if we think it's useful. Specifying an
alignment lower than the natural alignment would be essentially
impossible to support on anything other than x86, but specifying a greater
alignment would be possible.  I can't think of any useful optimizations which
would use that information, but maybe someone else has ideas.

Optimizer/codegen support coming soon.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136404 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-28 21:48:00 +00:00
..
AIXDataTypesFix.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
AlignOf.h Fix spelling. 2010-12-07 18:11:54 +00:00
Allocator.h Add BumpPtrAllocator::getTotalMemory() to allow clients to query how much memory a BumpPtrAllocator allocated. 2011-04-18 22:44:46 +00:00
Atomic.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
BlockFrequency.h Move static methods to the anonymous namespace. 2011-07-27 15:51:51 +00:00
BranchProbability.h BranchProbability::print returns void now. 2011-07-25 22:27:42 +00:00
CallSite.h land David Blaikie's patch to de-constify Type, with a few tweaks. 2011-07-18 04:54:35 +00:00
Capacity.h Add a generic 'capacity_in_bytes' function to allow inspection of memory usage of various data structures. 2011-07-27 18:40:45 +00:00
Casting.h PR7952: Make isa<> use the same logic as cast<>, so that they both work 2011-05-21 19:13:10 +00:00
CFG.h SuccIterator on bbs without terminator insts 2011-07-04 23:09:02 +00:00
circular_raw_ostream.h
COFF.h Merge System into Support. 2010-11-29 18:16:10 +00:00
CommandLine.h Add an extension point to the CommandLine library where clients can 2011-07-22 07:50:40 +00:00
Compiler.h Version N of the llvm_unreachable patch: VC++ doesn't recognize that abort() 2011-03-14 22:41:50 +00:00
ConstantFolder.h Convert ConstantExpr::getGetElementPtr and 2011-07-21 14:31:17 +00:00
ConstantRange.h improve switch formation to handle small range 2010-12-17 06:20:15 +00:00
CrashRecoveryContext.h Add explicit 'unregister' method to CrashRecoveryConextCleanupRegistrar. 2011-05-04 23:26:59 +00:00
DataFlow.h Fix build of DataFlow.h 2010-08-04 09:30:20 +00:00
DataTypes.h.cmake Merge System into Support. 2010-11-29 18:16:10 +00:00
DataTypes.h.in I swear I did a make clean and make before committing all this... 2010-11-29 18:47:54 +00:00
Debug.h Fix a comment. 2009-12-23 23:19:43 +00:00
DebugLoc.h Add dump() 2011-07-14 21:50:04 +00:00
Disassembler.h Merge System into Support. 2010-11-29 18:16:10 +00:00
DOTGraphTraits.h Pass the graph to the DOTGraphTraits.getEdgeAttributes(). 2011-02-27 04:11:03 +00:00
Dwarf.h Reapply r135457. This needs llvm-gcc change, that I forgot to check-in yesterday. 2011-07-19 19:41:54 +00:00
DynamicLibrary.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
ELF.h Fix spelling and sort CMakeLists.txt. 2011-06-13 11:11:39 +00:00
Endian.h Don't include config.h in public headers 2011-06-23 12:34:31 +00:00
Errno.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
ErrorHandling.h Version N of the llvm_unreachable patch: VC++ doesn't recognize that abort() 2011-03-14 22:41:50 +00:00
FEnv.h Add missing file. 2011-06-23 14:02:13 +00:00
FileSystem.h Add an optional 'bool makeAbsolute' in llvm::sys::fs::unique_file function. 2011-07-28 00:29:20 +00:00
FileUtilities.h Fix whitespace. 2011-03-31 13:06:39 +00:00
Format.h
FormattedStream.h Make tool_output_file's raw_ostream instance a member variable instead 2010-09-01 14:20:41 +00:00
GetElementPtrTypeIterator.h Convert gep_type_begin and gep_type_end to use ArrayRef. 2011-07-19 14:42:50 +00:00
GraphWriter.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
Host.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
IncludeFile.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
InstIterator.h
InstVisitor.h LangRef and basic memory-representation/reading/writing for 'cmpxchg' and 2011-07-28 21:48:00 +00:00
IRBuilder.h The personality function should be a Function* and not just a Value*. 2011-07-28 21:14:13 +00:00
IRReader.h MemoryBuffer now return an error_code and returns a OwningPtr<MemoryBuffer> via an out parm. 2010-12-16 03:29:14 +00:00
LeakDetector.h
LICENSE.TXT Merge System into Support. 2010-11-29 18:16:10 +00:00
MachO.h Trailing whitespace. 2011-01-17 18:34:03 +00:00
ManagedStatic.h Merge System into Support. 2010-11-29 18:16:10 +00:00
MathExtras.h Typo. 2010-12-15 22:33:06 +00:00
Memory.h Tidy up. 2011-03-18 16:39:36 +00:00
MemoryBuffer.h random comment cleanups. 2011-05-22 00:50:53 +00:00
MemoryObject.h Merge System into Support. 2010-11-29 18:16:10 +00:00
Mutex.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
MutexGuard.h Merge System into Support. 2010-11-29 18:16:10 +00:00
NoFolder.h Convert GetElementPtrInst to use ArrayRef. 2011-07-25 09:48:08 +00:00
OutputBuffer.h
PassManagerBuilder.h Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
PassNameParser.h Shrink PassNameParser's binary size with array_pod_sort. 2010-08-07 11:45:42 +00:00
Path.h Support: Rename Path.h to PathV1.h and add a new Path.h that includes both V1 and V2. 2010-12-17 17:22:36 +00:00
PathV1.h Add r127409 back now that the windows file was updated. 2011-03-10 18:33:29 +00:00
PathV2.h Adds llvm::sys::path::is_separator() to test whether a char is a path separator 2011-02-11 21:24:40 +00:00
PatternMatch.h Implement some basic simplifications involving min/max, for example 2011-05-03 19:53:10 +00:00
PluginLoader.h
PointerLikeTypeTraits.h Merge System into Support. 2010-11-29 18:16:10 +00:00
PredIteratorCache.h
PrettyStackTrace.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
Process.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
Program.h Have Program::Wait return -2 for crashed and timeouts instead of embedding 2011-05-21 00:56:46 +00:00
raw_os_ostream.h
raw_ostream.h raw_fd_ostream: Add a SetUseAtomicWrites() method (uses writev). 2011-02-03 03:32:32 +00:00
Recycler.h
RecyclingAllocator.h Provide operator delete for BumpPtrAllocator and RecyclingAllocator. They will 2010-04-08 15:22:35 +00:00
Regex.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
Registry.h Add a comment. 2010-07-26 21:05:37 +00:00
RegistryParser.h
RWMutex.h Merge System into Support. 2010-11-29 18:16:10 +00:00
Signals.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
SMLoc.h Added a newline at the end of SMLoc.h 2010-01-18 22:16:54 +00:00
Solaris.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
SourceMgr.h Add new -d option to tblgen. It writes a make(1)-style dependency file. 2011-06-01 13:10:15 +00:00
StringPool.h Don't pass StringRef by reference. 2010-07-14 22:38:02 +00:00
SwapByteOrder.h Merge System into Support. 2010-11-29 18:16:10 +00:00
system_error.h Don't include config.h in public headers 2011-06-23 12:34:31 +00:00
SystemUtils.h Rename FindExecutable to PrependMainExecutablePath. 2010-11-03 16:14:16 +00:00
TargetFolder.h Convert ConstantExpr::getGetElementPtr and 2011-07-21 14:31:17 +00:00
Threading.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
ThreadLocal.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
Timer.h Merge System into Support. 2010-11-29 18:16:10 +00:00
TimeValue.h Fix a ton of comment typos found by codespell. Patch by 2011-04-15 05:18:47 +00:00
ToolOutputFile.h Move tool_output_file into its own file. 2010-10-07 20:32:40 +00:00
type_traits.h
TypeBuilder.h Remove uses of std::vector from TypeBuilder. 2011-07-25 10:32:27 +00:00
Valgrind.h Now to chant the magical incantation that will exorcise the System library 2010-11-29 19:44:50 +00:00
ValueHandle.h Revert r122114 (CallbackVH observing use-list changes) because it caused severe slowdowns on the Linux self-host configuration. 2010-12-20 22:28:03 +00:00
Win64EH.h Fix definitions of UOP_SaveXMM128, UOP_SaveXMM128Big, and UOP_PushMachFrame 2011-05-26 05:24:15 +00:00