I constantly feel like I don't have much experience using LLVM but I hope
this isn't a foolish question.

I had a thought. If I have a struct with three 8bit (or 16bit) variables a,
b and c and I want to do an atomic write to one variable. What happens if
the target backend doesn't support atomic writes of that bitsize? It
wouldn't be very safe to read, modify the 8bits then write again since it's
not atomic. Logically the frontend can easily fix this problem by padding
or forcing the variables to be a supported size. My question is will I get
a compile error if I try to do an unsupported atomic write? Am I able to
query for information before I generate code? Is there a list I should
check for each backend I want to support? I'm unsure what I should do for
good frontend support.
_______________________________________________
cfe-users mailing list
cfe-users@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users

Reply via email to