일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- on stack replacement
- v8 tracing
- on-stack replacement
- android inject
- linux thread
- linux debugging
- custom packer
- tracerpid
- thread local storage
- OSR
- tracing
- Linux custom packer
- pinpoint
- uftrace
- 난독화
- LLVM Obfuscator
- LLVM
- anti debugging
- initial-exec
- so inject
- apm
- pthread
- Linux packer
- Android
- LLVM 난독화
- Obfuscator
- 안티디버깅
- TLS
- Injection
- v8 optimizing
- Today
- Total
목록분류 전체보기 (139)
Why should I know this?
* 상황 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..
https://youtu.be/iV5jBtE35r4?si=DrrIq7UaO-bJSlZb 이걸 왜 못봤어나 싶다.
https://youtu.be/y4b-sgp6VYA?si=FBwXN-abkikLJwx0 cmake .. -GNinja \ -DCMAKE_BUILD_TYPE=Release \ -DLLVM_ENABLE_LLD=ON \ -DLLVM_ENABLE_PROJECTS="clang;lld;compiler-rt" \ -DLLVM_TARGETS_TO_BUILD="AArch64;ARM;X86" \ -DLLVM_ENABLE_ASSERTION=OFF -E : Stop before compiling -S : Stop before assembling -c : Stop before linking Dumping LEXER Tokens clang -Xclang -dump-tokens -E foo.cpp clang -Xclang -hel..
https://docs.github.com/ko/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent 새 SSH 키 생성 및 ssh-agent에 추가 - GitHub Docs SSH(보안 셸 프로토콜)를 사용하여 GitHub.com의 리포지토리에서 데이터를 액세스하고 쓸 수 있습니다. SSH를 통해 연결할 때 로컬 머신에서 프라이빗 키 파일을 사용하여 인증합니다. 자세한 내용은 docs.github.com
https://github.com/llvm/llvm-project/issues/33874 Improve bitfield arithmetic · Issue #33874 · llvm/llvm-project Bugzilla Link 34526 Version trunk OS Windows NT CC @alexey-bataev,@legrosbuffle,@rotateright Extended Description We could improve math ops on irregular bitfields with the relevant SWAR style patte... github.com 패치목적 // 기존에 생성되던 IR define dso_local i8 @AddCounters(Counters, Counters)(..
https://github.com/llvm/llvm-project/pull/74317 [InstCombine] Generalize folds for inversion of icmp operands by nikic · Pull Request #74317 · llvm/llvm-project We have a bunch of folds that basically perform X pred Y to ~Y pred ~X for various special cases where this saves an instruction. Generalize these folds to use isFreeToInvert(). We have to make sur... github.com // Transform (~X ^ Y) s< ..
~X NOT X A + B NOT -1 -B - A B - A NOT A + (-1 - B) A - B NOT B + (-1 - A) A ^ B NOT A ^ ~B A ^ ~B NOT A ^ B A s>> B NOT ~A s>>B 부연설명 A+B -> -1 -B -A (양->음전) 100+100 이라고 하면, 결과는 200, NOT은 -201이 나와야 함. -100 -100 -1 = -201 A-B -> B + (-A - 1(양>음전)) A^B -> A^~B ; A^B는 A를 -1로 생각하면 -1^B -> ~B가 됨. 이의 NOT은 B. -1^~B = B A s>> B -> ~A s>> B ; (몰?루?)
1. 정의 2. 주요 기능 3. 활용 예제 1. ConstantRange 는 ConstantRange.h 에 선언되어 있다. /// This class represents a range of values. 생성자 셋 ConstantRange::ConstantRange(uint32_t BitWidth, bool Full) : Lower(Full ? APInt::getMaxValue(BitWidth) : APInt::getMinValue(BitWidth)), Upper(Lower) {} ConstantRange::ConstantRange(APInt V) : Lower(std::move(V)), Upper(Lower + 1) {} ConstantRange::ConstantRange(APInt L, APInt ..
1. 기능 설명 2. 내부 함수 설명 3. 활용 설명 https://github.com/ParkHanbum/llvm-project/commit/d77067d08a3f56dc2d0e6c95bd2852c943df743a [ValueTracking] Add dominating condition support in computeKnownBits(… · ParkHanbum/llvm-project@d77067d …) (#73662) This adds support for using dominating conditions in computeKnownBits() when called from InstCombine. The implementation uses a DomConditionCache, which stores ..
LLVM 에는 최적화를 위한 부가 데이터가 있다. value.h protected: /// Hold subclass data that can be dropped. /// /// This member is similar to SubclassData, however it is for holding /// information which may be used to aid optimization, but which may be /// cleared to zero without affecting conservative interpretation. unsigned char SubclassOptionalData : 7; SubClassOptionalData or disjoint disjoint는 or 최적화를 위한 ..