Lines Matching refs:Form
44 ID.AddInteger(unsigned(Form));
79 // Emit form type.
200 getDIE##T().EmitValue(AP, Form); \
212 return getDIE##T().SizeOf(AP, Form);
242 void DIEInteger::EmitValue(const AsmPrinter *Asm, dwarf::Form Form) const {
244 switch (Form) {
272 default: llvm_unreachable("DIE Value form not supported yet");
279 unsigned DIEInteger::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
280 switch (Form) {
304 default: llvm_unreachable("DIE Value form not supported yet");
320 void DIEExpr::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {
321 AP->OutStreamer->EmitValue(Expr, SizeOf(AP, Form));
326 unsigned DIEExpr::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
327 if (Form == dwarf::DW_FORM_data4) return 4;
328 if (Form == dwarf::DW_FORM_sec_offset) return 4;
329 if (Form == dwarf::DW_FORM_strp) return 4;
342 void DIELabel::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {
343 AP->EmitLabelReference(Label, SizeOf(AP, Form),
344 Form == dwarf::DW_FORM_strp ||
345 Form == dwarf::DW_FORM_sec_offset ||
346 Form == dwarf::DW_FORM_ref_addr);
351 unsigned DIELabel::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
352 if (Form == dwarf::DW_FORM_data4) return 4;
353 if (Form == dwarf::DW_FORM_sec_offset) return 4;
354 if (Form == dwarf::DW_FORM_strp) return 4;
367 void DIEDelta::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {
368 AP->EmitLabelDifference(LabelHi, LabelLo, SizeOf(AP, Form));
373 unsigned DIEDelta::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
374 if (Form == dwarf::DW_FORM_data4) return 4;
375 if (Form == dwarf::DW_FORM_sec_offset) return 4;
376 if (Form == dwarf::DW_FORM_strp) return 4;
391 void DIEString::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {
393 (Form == dwarf::DW_FORM_strp || Form == dwarf::DW_FORM_GNU_str_index) &&
394 "Expected valid string form");
397 if (Form == dwarf::DW_FORM_GNU_str_index) {
398 DIEInteger(S.getIndex()).EmitValue(AP, Form);
403 assert(Form == dwarf::DW_FORM_strp);
405 DIELabel(S.getSymbol()).EmitValue(AP, Form);
410 DIEInteger(S.getOffset()).EmitValue(AP, Form);
415 unsigned DIEString::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
417 (Form == dwarf::DW_FORM_strp || Form == dwarf::DW_FORM_GNU_str_index) &&
418 "Expected valid string form");
421 if (Form == dwarf::DW_FORM_GNU_str_index)
422 return DIEInteger(S.getIndex()).SizeOf(AP, Form);
426 return DIELabel(S.getSymbol()).SizeOf(AP, Form);
429 return DIEInteger(S.getOffset()).SizeOf(AP, Form);
443 void DIEEntry::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {
445 if (Form == dwarf::DW_FORM_ref_addr) {
465 // DWARF4: References that use the attribute form DW_FORM_ref_addr are
498 void DIELoc::EmitValue(const AsmPrinter *Asm, dwarf::Form Form) const {
499 switch (Form) {
500 default: llvm_unreachable("Improper form for block");
515 unsigned DIELoc::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
516 switch (Form) {
523 default: llvm_unreachable("Improper form for block");
549 void DIEBlock::EmitValue(const AsmPrinter *Asm, dwarf::Form Form) const {
550 switch (Form) {
551 default: llvm_unreachable("Improper form for block");
564 unsigned DIEBlock::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
565 switch (Form) {
570 default: llvm_unreachable("Improper form for block");
583 unsigned DIELocList::SizeOf(const AsmPrinter *AP, dwarf::Form Form) const {
584 if (Form == dwarf::DW_FORM_data4)
586 if (Form == dwarf::DW_FORM_sec_offset)
593 void DIELocList::EmitValue(const AsmPrinter *AP, dwarf::Form Form) const {