일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Linux packer
- linux debugging
- so inject
- LLVM
- thread local storage
- tracerpid
- initial-exec
- uftrace
- Obfuscator
- custom packer
- linux thread
- Linux custom packer
- v8 tracing
- tracing
- Injection
- LLVM 난독화
- 안티디버깅
- on stack replacement
- on-stack replacement
- anti debugging
- OSR
- android inject
- v8 optimizing
- TLS
- pinpoint
- apm
- 난독화
- LLVM Obfuscator
- Android
- pthread
- Today
- Total
목록전체 글 (141)
Why should I know this?
SmallVector WorkList; WorkList.push_back(RetagReg); while (!WorkList.empty()) { Register UseReg = WorkList.pop_back_val(); for (auto &UseI : MRI->use_instructions(UseReg)) { unsigned Opcode = UseI.getOpcode(); if (Opcode == AArch64::STGi || Opcode == AArch64::ST2Gi || Opcode == AArch64::STZGi || Opcode == AArch64::STZ2Gi || Opcode == AArch64::STGPi || Opcode == AArch64::STGloop || Opcode == AArc..
원문 출처 : https://developer.arm.com/documentation/ddi0602/2023-12/Base-Instructions/STP--Store-Pair-of-Registers-?lang=en#iclass_post_index Documentation – Arm Developer developer.arm.com // FIXME: Use dedicated range-checked addressing mode operand here.defm STPW : StorePairOffset;defm STPX : StorePairOffset; multiclass StorePairOffset opc, bit V, RegisterOperand regtype, ..
* 유관 패치를 작성하게 되면 반영하기 위해 남겨놓는 목적 * * 다른 패치 작성자 분들이 혹시 보게 되면 활용해주세요. * AArch64MIPeepholeOpt.cpp::555 // replaceRegWith changes MIs definition register. Keep it for SSA form until // deleting MI. Only if we made a new destination register. if (DstReg != NewDstReg) { MRI->replaceRegWith(DstReg, NewDstReg); MI.getOperand(0).setReg(DstReg); //

https://die4taoam.tistory.com/122 LLVM 에 패치 보내기 튜토리얼 https://youtu.be/C5Y977rLqpw?si=JXvJ7RsQ-26XSW4i 패치 만들고 LLVM 에 보내기 코드를 수정한 뒤 LLVM 에 기여하는 방식은 code-review 과정을 별도의 플랫폼에서 거친다는 차이가 있습니다. 이에 대한 자세한 과정 die4taoam.tistory.com LLVM에 패치 보내는 튜터리얼은, Nikita Popov 가 작성한 글을 기반으로 작성됐습니다. 현재는 이 글에 포함되어 있는 리뷰과정은 모두 완전 github로 옮겨간 점 등이 달라졌으며, github 환경에 익숙한 사람들에게는 오히려 더 쉽게 LLVM에 기여할 수 있는 기회가 될 수 있을 것 같습니다. 이런저..
* 상황 1. fix-issue-001 이란 이름으로 만든 Branch에서 작업 후 Github에서 Pull Request 를 보낸 후 2. Remote의 fix-issue-001 Branch를 삭제하고 3. 새로 만든 동일한 이름의 fix-issue-001 Branch로 force-push 한 경우 * 문제 위와 같이 Branch를 새로 만든 후 push 한 경우, 이미 보낸 Pull Request로 갱신이 되지 않는다. 물론 PR을 새로 올리는 것도 방법이지만, 이미 보내놓은 PR에서 의견 소통이 이뤄진 경우 이 흔적을 지우는건 좋지 않다. * 해결책 먼저 현재의 브랜치 fix-issue-001 를 이름을 변경한다. 대충 fix-issue-001___ 로 변경했다고 치자. 과거의 브랜치를 복구한다 g..