1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /* 2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Generic 32-bit binary float operation. 3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * 4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * For: add-fp, sub-fp, mul-fp, div-fp 5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /* binop/2addr vA, vB */ 8f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee movzx rINSTbl,%ecx # ecx<- A+ 9f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee andb $$0xf,%cl # ecx<- A 10f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee $load (rFP,%ecx,4) # vAA to fp stack 11f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee sarl $$4,rINST # rINST<- B 12f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee $instr (rFP,rINST,4) # ex: faddp 13a7d59bbafea5430fe81fc21ba94ddf6f6a63b0b3buzbee FETCH_INST_OPCODE 1 %eax 14f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee ADVANCE_PC 1 15f3e177289ac078f18401cfd8eebafe584dd0d01fbuzbee $store (rFP,%ecx,4) # %st to vA 16a7d59bbafea5430fe81fc21ba94ddf6f6a63b0b3buzbee GOTO_NEXT_R %eax 17