Commit Graph

8 Commits

Author SHA1 Message Date
dimgigov 4c610b8a80 fix(qbe): improved if-else label handling, QBE_IsTerminator for hIf 2026-06-02 13:32:41 +03:00
dimgigov 319dcd9280 fix(qbe): QBE_EnsureLocal for all operands, uppercase hVar→0, char→w 2026-06-02 13:29:38 +03:00
dimgigov 0eadb8ab76 fix(qbe): QBE_EnsureLocal for hFieldPtr base, char types w→w 2026-06-02 13:24:08 +03:00
dimgigov 6fdbc139d0 fix(qbe): QBE_EnsureLocal — add % prefix to bare identifiers in store/call/ret 2026-06-02 13:18:15 +03:00
dimgigov a61cd198a8 fix(qbe): empty val/target fallbacks for hStore, hAssign, alloca-init 2026-06-02 13:11:40 +03:00
dimgigov cae53aeaef fix(qbe): Lcx_ResolveTypeKind — map TypeExpr.kind→Type.kind, fix alloca typeKind, skip empty stores 2026-06-02 13:02:35 +03:00
dimgigov 8d0841b6be fix(qbe): hCast passthrough, logical ops =w→=l, implicit ret, && rVal string bug 2026-06-02 12:50:51 +03:00
dimgigov 70cfa4f721 feat: backtick raw/multi-line strings + QBE backend fixes
- Add backtick raw string literals (Go-style ): no escape processing, multi-line
- C backend: handle backtick strings in emitExpr
- Self-hosted lexer: lexScanBacktickString support
- QBE backend: handle backtick strings in data sections
- QBE: remove broken extern declarations (QBE resolves at link time)
- QBE: fix comparison result types (ceql → w, extend to l)
- QBE: fix SSA parameter name clash (_p_ prefix for params)
- QBE: const inlining via HirLower + QBE emitter
- QBE: proper type mapping for bool/char types
- hir_lower: collect dkConst declarations for const propagation
2026-06-02 11:33:29 +03:00