search for: atomic_membarri

Displaying 4 results from an estimated 4 matches for "atomic_membarri".

Did you mean: atomic_membarrier
2008 Feb 15
0
[LLVMdev] llvm.atomic.barrier implementation
...(working copy) @@ -4260,6 +4260,15 @@ EmitBlock(new BasicBlock("")); return true; + case BUILT_IN_SYNCHRONIZE: { + Value* C[4]; + C[0] = C[1] = C[2] = C[3] = ConstantInt::get(Type::Int1Ty, 1); + + Builder.CreateCall(Intrinsic::getDeclaration(TheModule, Intrinsic::atomic_membarrier), + C, C + 4); + return true; + } + #if 1 // FIXME: Should handle these GCC extensions eventually. case BUILT_IN_APPLY_ARGS: case BUILT_IN_APPLY:
2008 Feb 15
6
[LLVMdev] llvm.atomic.barrier implementation
Attached is the target independent llvm.atomic.barrier support, as well as alpha and x86 (sse2) support. This matches Chandler's definitions, and the LangRef patch will just restore that. Non-sse2 barrier will be needed, I think it is "lock; mov %esp, %esp", but I'm not sure. Any objections? I'll take a hack at the front end support for __sync_synchronize after this
2008 Feb 15
2
[LLVMdev] llvm.atomic.barrier implementation
...> EmitBlock(new BasicBlock("")); > return true; > > + case BUILT_IN_SYNCHRONIZE: { > + Value* C[4]; > + C[0] = C[1] = C[2] = C[3] = ConstantInt::get(Type::Int1Ty, 1); > + > + Builder.CreateCall(Intrinsic::getDeclaration(TheModule, > Intrinsic::atomic_membarrier), > + C, C + 4); > + return true; > + } > + > #if 1 // FIXME: Should handle these GCC extensions eventually. > case BUILT_IN_APPLY_ARGS: > case BUILT_IN_APPLY: > _______________________________________________ > LLVM Developers mailing...
2008 Feb 15
3
[LLVMdev] llvm.atomic.barrier implementation
...> EmitBlock(new BasicBlock("")); > return true; > > + case BUILT_IN_SYNCHRONIZE: { > + Value* C[4]; > + C[0] = C[1] = C[2] = C[3] = ConstantInt::get(Type::Int1Ty, 1); > + > + Builder.CreateCall(Intrinsic::getDeclaration(TheModule, > Intrinsic::atomic_membarrier), > + C, C + 4); > + return true; > + } > + > #if 1 // FIXME: Should handle these GCC extensions eventually. > case BUILT_IN_APPLY_ARGS: > case BUILT_IN_APPLY: > _______________________________________________ > LLVM Developers mailing...