search for: f9000668

Displaying 2 results from an estimated 2 matches for "f9000668".

2014 Dec 09
4
[LLVMdev] dmb ishld in AArch64
..._node *next) { n->pprev = next->pprev; n->next = next; rcu_assign_pointer(hlist_pprev_rcu(n), n); next->pprev = &n->next; } can reordered, and causes kernel crash. f94006a8 ldr x8, [x21,#8] f9000275 str x21, [x19] d5033abf dmb ishst f9400669 ldr x9, [x19,#8] f9000668 str x8, [x19,#8] <==== reordered str f9000133 str x19, [x9] f90006b3 str x19, [x21,#8] It should be: f94006a8 ldr x8, [x21,#8] f9000668 str x8, [x19,#8] f9000275 str x21, [x19] d5033abf dmb ishst f9400669 ldr x9, [x19,#8] f9000133 str x19, [x9] f90006b3 str x19, [x21,#8] I guess it’...
2014 Dec 09
2
[LLVMdev] dmb ishld in AArch64
...ev assignment. Could be because of an aliasing violation, or it > could be LLVM. The problem is explained below, the reordering causes accessing to uninitialized data. f94006a8 ldr x8, [x21,#8] f9000275 str x21, [x19] d5033abf dmb ishst f9400669 ldr x9, [x19,#8] <==== uninitialized data f9000668 str x8, [x19,#8] <==== initialization f9000133 str x19, [x9] <==== accessing uninitialized address f90006b3 str x19, [x21,#8] > Do you have preprocessed source or LLVM IR handy? (You can get a .i > file from "clang -save-temps" for example). The IR looks OK to me, the ord...