llvm-project/llvm/lib
Eli Friedman c9a551ebed 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.

llvm-svn: 136404
2011-07-28 21:48:00 +00:00
..
Analysis Heuristics are in descending priority now. If we use one of them, skip the rest. 2011-07-28 21:45:07 +00:00
Archive Revert PathV2 changes, as sys::fs::unique_file is not finished yet. 2011-03-01 19:50:55 +00:00
AsmParser LangRef and basic memory-representation/reading/writing for 'cmpxchg' and 2011-07-28 21:48:00 +00:00
Bitcode LangRef and basic memory-representation/reading/writing for 'cmpxchg' and 2011-07-28 21:48:00 +00:00
CodeGen LangRef and basic memory-representation/reading/writing for 'cmpxchg' and 2011-07-28 21:48:00 +00:00
CompilerDriver Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
ExecutionEngine - Move CodeModel from a TargetMachine global option to MCCodeGenInfo. 2011-07-20 07:51:56 +00:00
Linker Migrate LLVM and Clang to use the new makeArrayRef(...) functions where previously explicit non-default constructors were used. 2011-07-18 12:00:32 +00:00
MC Support .code32 and .code64 in X86 assembler. 2011-07-27 00:38:12 +00:00
Object ObjectFile: Add a method to check whether a section contains a symbol. 2011-07-15 18:39:21 +00:00
Support Add an optional 'bool makeAbsolute' in llvm::sys::fs::unique_file function. 2011-07-28 00:29:20 +00:00
Target ARM assembly parsing and encoding for BFC and BFI. 2011-07-28 21:34:26 +00:00
Transforms Some minor cleanups. No functionalitical change. 2011-07-28 07:44:07 +00:00
VMCore LangRef and basic memory-representation/reading/writing for 'cmpxchg' and 2011-07-28 21:48:00 +00:00
CMakeLists.txt Build CompilerDriver library. 2011-03-12 22:01:42 +00:00
Makefile Add LLVMObject Library. 2010-11-15 03:21:41 +00:00